Android之使用HTTP协议的Get/Post方式向服务器提交数据

时间:2022-12-06 14:28:42
1、Get方式
  • 方法:通过拼接url在url后添加相应的数据,如:http://172.22.35.112:8080/videonews/GetInfoServlet?title=霍比特人&timelength=100;
  • 缺点:通过Get方式提交数据只能发送2K以内的数据,适合发送容量较小的数据,另外,如果发送的数据是中文,则需要对url和服务器端做相应的乱码处理(设置能显示中文的编码方式),否则会产生乱码问题。处理方式如下:Android之使用HTTP协议的Get/Post方式向服务器提交数据

2、Post方式

  • 方法:
  1. 使用请求参数组拼成实体数据,即按一定格式把数据组拼起来。如:title= title=霍比特人&timelength=100;
  2. 得到实体数据的字节数据,如:byte []entry=data.deleteCharAt(data.length()-1).toString().getBytes();
  3. 创建一个HttpURLConnection,并且进行相关设置。Android之使用HTTP协议的Get/Post方式向服务器提交数据Android之使用HTTP协议的Get/Post方式向服务器提交数据
  4. 设置HTTP请求的头字段,其中在不使用Cookie的情况下,一些头字段可以省略,不设置,但Content_Type和Content_Length是必须要设置的。如:Android之使用HTTP协议的Get/Post方式向服务器提交数据Android之使用HTTP协议的Get/Post方式向服务器提交数据
  5. 由于实体数据是由客户端流向服务器,可以取得输出流,然后通过输出流向外写数据(注意:只有当取得服务器的响应码时才会向外写数据。由此处可知前面把实体数据转换成byte字节是为了后面进行发送,代码之美完美体现。)。如:Android之使用HTTP协议的Get/Post方式向服务器提交数据
                    Android之使用HTTP协议的Get/Post方式向服务器提交数据