您的位置:首页 > 理论基础 > 计算机网络

通过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请求。(详细的请见:Hypertext
Transfer 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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: