Jakarta Commons  3.X版本自11年之后就不再更新了,现在4.0以后的版本叫做HttpComponents

可以到这里下载 http://hc.apache.org/downloads.cgi

令人惊喜的是 HttpClient 4.2提供了连贯操作()。抛弃原来3.X版本的GetMethod、PostMethod,使得Http访问变得非常容易。

Get Request

Request.Get("http://somehost/")
        .execute().returnContent().asString();

简单一句话就可以页面内容获取到了。

如果Get有参数,可以使用URIBuilder来进行设置

URIBuilder builder = new URIBuilder();
builder.setScheme(ServerInfo.PROTOCAL).setHost(ServerInfo.HOST).setPath(path)
    .setParameter("para1", para1)
    .setParameter("para2", para2)
    .setParameter("para3", para3);

然后再进行Get

Request.Get(builder.build()).execute().returnContent().asString();

Post Request

说到Post,自然要进行参数提交

List<NameValuePair> forms = Form.form()
	.add("para1", para1)
	.add("para2", para2)
	.build();
Request.Post(uri).bodyForm(forms)
	.execute().returnResponse().getStatusLine().getStatusCode();

本例将para1、para2两个参数提交到uri,并获取返回页面的HTTP_STATUS,其中uri亦可以通过URIBuilder进行构造。

是不是很轻松~

如无特殊声明,本文为Zhonghcc原创文章,转载请注明: 转载自Zhonghcc 's Blog
本文链接地址: Apache HttpComponents(HTTPClient) Fluent API 使用

 回复

(必须)

(必须)

© 2016 Zhonghcc 's Blog Suffusion theme by Sayontan Sinha