httpclient 4.0 使用

httclient 正常流程

1、创建httpclient实例

HttpClient httpClient = new DefaultHttpClient();
CloseableHttpClient httpclient =  HttpClients.createDefault();

2、创建请求实例

HttpGet httpGet = new HttpGet(url);
HttpPost httpPost = new HttpPost(url);

3、补充头信息(可选)

httpPost.addHeader("Referer", "http://iservice.10010.com/e4/query/basic/history_list.html");
httpPost.addHeader(" Cookie ", " td_cookie=18446744072103645798; mallcity=31|310; ");

4、补充请求实体

1)url是restful风格,已经包含需要传入的参数。可以跳过直接到下一步操作。

url="https://ssoqa.99bill.com/sso/login/smsvalidate.htm?method=loginErrorCount&idContent=1234567" 

2)表单

List<NameValuePair> nvps = new ArrayList<NameValuePair>();
nvps.add(new BasicNameValuePair("querytype", "0001"));
nvps.add(new BasicNameValuePair("querycode", "0001"));
nvps.add(new BasicNameValuePair("billdate", "201608"));
nvps.add(new BasicNameValuePair("flag", "2"));
httpPost.setEntity(new UrlEncodedFormEntity(nvps));

5、请求执行

HttpResponse response = httpClient.execute(httpGet);
CloseableHttpResponse response = httpclient.execute(httpGet);
byte[] response = httpClient.execute(httpGet,handler);

6、读取响应内容

if (response.getStatusLine().getStatusCode() == 200) {
    HttpEntity entity = response.getEntity();
     if (entity != null) {
                     InputStream instream = entity.getContent();
            try {
           // do something useful
             } finally {
                instream.close();
            }
        }
   } 

7、释放连接

response.close(); 

需要引用的jar

        <!-- httpclient -->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.3.4</version>
        </dependency>
        <!-- httpclient -->
时间: 2024-10-11 08:24:09

httpclient 4.0 使用的相关文章

Atitit.http httpclient实践java c# .net php attilax总结

1. Navtree>> net .http1 2. Httpclient理论1 2.1. 自动url转向的控制1 3. Java里面的httpclient1 4. C# .net的httpclient2 4.1.1. .NET 4.5(C#):2 4.2. 对COOKIE和SEIION支持区别3 4.3. 用户对是否自动url转向的控制3 4.4. 对用户代理服务器的支持3 5. Php的httpclient3 6. Node.js4 7. solu解决问题::4 8. ref参考资料4 8

Java学习心得之 HttpClient的GET和POST请求

作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Java学习心得之 HttpClient的GET和POST请求 1. 前言2. GET请求3. POST请求 一.前言 本篇博文记录了HttpClient的GET和POST请求 本文内容基于以下文章: http://huangqiqing123.iteye.com/blog/2054436        (HttpClient之 addHeader与setHeader)http://zyw

android和httpClient

初,谷歌安卓新出,库中自带HttpClient 4.0测试预览版.为与安卓保持API同步,HTTPClient不敢大动大改.后来,HTTPClient 4.0渐趋成熟,apache欲使android跟进更新对应的库,android拒绝之.然旧库bug丛生,瑕疵遍地.故今apache新出一个HTTPClient for android. 链接:http://hc.apache.org/httpcomponents-client-4.3.x/android-port.html

HttpURLConnection与 HttpClient 区别/性能测试对比

ttpClient是个开源框架,封装了访问http的请求头,参数,内容体,响应等等, HttpURLConnection是java的标准类,什么都没封装,用起来太原始,不方便 HttpClient实际上是对Java提供方法的一些封装, 在HttpURLConnection中的输入输出流操作, 在这个接口中被统一封装成了HttpPost(HttpGet)和HttpResponse, 这样,就减少了操作的繁琐性. 性能方面这里做一个测试: HttpURLConnection VS HttpClien

学习脚步--- HttpClient4.0, multipartEntity (转)

学习脚步--- HttpClient4.0 Apache网络协议网络应用应用服务器HTML HttpClient程序包是一个实现了 HTTP 协议的客户端编程工具包,要想熟练的掌握它,必须熟悉 HTTP协议.一个最简单的调用如下: Java代码 HttpClient4.0, multipartEntity (转)"> HttpClient4.0, multipartEntity (转)"> import java.io.IOException; import org.apa

android HttpClient 附带的参数

Sending images can be done using the HttpComponents libraries. Download the latest HttpClient (currently4.0.1) binary with dependencies package and copy apache-mime4j-0.6.jar and httpmime-4.0.1.jar to your project and add them to your Java build path

HttpClient 4 使用方法的几个例子(代理,StringEntity字符串数据,文件上传)(转载)

1,HttpClient读取页面的使用例子: package com.laozizhu.apache.httpclient; import java.net.Socket; import org.apache.http.ConnectionReuseStrategy; import org.apache.http.Header; import org.apache.http.HttpHost; import org.apache.http.HttpResponse; import org.apa

httpClient请求响应延迟

客户端可以先向服务器端发送一个请求,如果服务器端返回的是状态码100,那么客户端就可以继续把请求体的数据发送给服务器端.这样在某些情况下可以减少网络开销. 再看看HttpClient里面对100-Continue的说明: The purpose of the Expect: 100-Continue handshake is to allow the client that is sending a request message with a request body to determine

c# 进阶之 WebAPI

REST是设计风格而不是标准. webapi有自己的路由. webservice和wcf的协议都是soap协议,数据的序列化和反序列化都是soap的格式.而webapi是Json的数据传递 webapi的优点有哪些? (1)非常适合做http的请求,前端与webapi交互特别方便 (2)webapi更轻量因为使用的json数据来传递. (3)webapi很多时候是给前端提供数据的,因为webapi跟控制器关联的没那么紧密(若是没webapi,用mvc的模式,那么页面直接从对应的控制器获取数据),