通过java.net.URLConnection发送HTTP请求的方法
2016-03-23 15:07
471 查看
/article/5245085.html
通过java.net.URLConnection发送HTTP请求的方法
阅读目录运用原生Java
Api发送简单的Get请求、Post请求
简单封装
简单测试
如何通过Java发送HTTP请求,通俗点讲,如何通过Java(模拟浏览器)发送HTTP请求。
Java有原生的API可用于发送HTTP请求,即java.net.URL、java.net.URLConnection,这些API很好用、很常用,但不够简便;
所以,也流行有许多Java HTTP请求的framework,如,Apache的HttpClient。
目前项目主要用到Java原生的方式,所以,这里主要介绍此方式。
运用原生Java Api发送简单的Get请求、Post请求
HTTP请求粗分为两种,一种是GET请求,一种是POST请求。(详细的请见:HypertextTransfer Protocol -- HTTP/1.1 - Method Definitions)
使用Java发送这两种请求的代码大同小异,只是一些参数设置的不同。步骤如下:
通过统一资源定位器(java.net.URL)获取连接器(java.net.URLConnection)
设置请求的参数
发送请求
以输入流的形式获取返回内容
关闭输入流
简单的Get请求示例如下:
HttpGetRequest
简单的Post请求示例如下:
HttpPostRequest
简单封装
如果项目中有多处地方使用HTTP请求,我们适当对其进行封装,可以大大减少代码量(不需每次都写一大段原生的请求Source code)
也可以使配置更灵活、方便(全局设置一些项目特有的配置,比如已商榷的time out时间、已确定的Proxy Server,避免以后改动繁琐)
以下简单封装成HttpRequestor,以便使用:
HttpRequestor
写一个调用的测试类:
Call
OK,完成!!
简单测试
以上的请求地址都是http://localhost:8080/OneHttpServer/这是自己的一个用于测试的Web Application,就一个简单的Servlet和web.xml。毕竟需要测试请求参数是否能正常接收,处理超时的情况。
LoginServlet
LoginServlet
web.xml
web.xml
相关文章推荐
- iOS 网络问题
- HTTP格式布局
- android.net.http.AndroidHttpClient Android6.0 API23以后失效
- 分组交换 的理解
- 完美配置Tomcat的HTTPS
- HTTP错误码集合,及错误原因
- java 发送http json请求
- 网络编程一
- 分享一个免费SSL证书申请网站,给网站开启https协议 | 张戈博客
- [ios]http无法链接
- Android上实现TCP&UDP的客户端和服务端
- 理解HTTP幂等性
- 关于启用 HTTPS 的一些经验分享
- Xcode7 使用NSURLSession发送HTTP请求的问题
- [疯狂Java]TCP:TCP协议的概念、Socket通信、超时等待
- Android学习之网络请求库Retrofit2
- 网络扫描(一)
- HttpClient使用详解
- TCP与UDP在socket编程中的区别
- Android判断网络状态并远程获取数据