特别好的一个文章解析:
https://blog.csdn.net/laiyaxing/article/details/51585755
一:发送请求主要有两种方法。
抽象类URLConnection是所有类的超类,他代表应用程序和URL之间的通信连接。个人感觉这两个连接方式除了在一开始的:通过在 URL 上调用 openConnection 方法创建连接对象语法上略有不同之外,其余的差不太多
1.使用HttpURLConnection发送Post和Get请求。
URL url=new URL(posturl);HttpURLConnection conn=(HttpURLConnection) url.openConnection();
2.使用URLConnection发送Post和Get请求。
URL url=new URL(posturl); URLConnection conn=url.openConnection();
二:主要流程是下面四步:
1.通过在URL上调用openconnetcion方法创建连接
2.设置请求参数,属性,请求正文(即需要提交的数据)
3.使用connect方法简历到远程对象的实际连接(可省略),为啥?
因为:connect()函数,实际上只是建立了一个与服务器的tcp连接,并没有实际发送http请求。
无论是post还是get,http请求实际上直到HttpURLConnection的getInputStream()这个函数里面才正式发送出去。4.远程对象变为可用,获取response返回的相应信息
三:一个使用HttpURLConnection类实现的post请求实例
public static String sendServicePost(String ur