HttpClient的简单使用

当我们在做项目间的接口测试时,我们自然就联想到了http协议,java原生的URLconnection用起来也比较生硬繁琐,自然我们就想到了HttpClient

HttpClient下载地址:http://hc.apache.org/downloads.cgi,该测试用例基于HttpClient4.5.2版本。

做了一个小小的Demo,供大家参考。

//创建HttpClient工厂
		HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();  
	    //由HttpClient工厂产生HttpClient实例
	    CloseableHttpClient closeableHttpClient = httpClientBuilder.build();
        // 创建get/post请求实例  
        HttpPost httpPost = new HttpPost("http://localhost:8080/demo/user");
        //google Gson
        Gson gson=new Gson(); 
        Map<String,String> map=new HashMap<String,String>();
        map.put("test", "TEST");
        String queryCase=gson.toJson(map);    
        StringEntity reqEntity = new StringEntity(queryCase);
        //接收方式,参考ajax ContentType
        reqEntity.setContentType("application/json");
        //绑定参数
        httpPost.setEntity(reqEntity);  
        
        System.out.println("executing request "+httpPost.getURI()); 
        try  
        {     
            // 客户端执行get/post请求 返回响应实体  
            HttpResponse response = closeableHttpClient.execute(httpPost);  
              
            // 服务器响应状态行  
            System.out.println(response.getStatusLine());
              
            Header[] heads = response.getAllHeaders();  
            // 打印所有响应头  
            for(Header h:heads){  
                System.out.println(h.getName()+":"+h.getValue());  
            }  
            
            // 获取响应消息实体  
            HttpEntity entity = response.getEntity();  
              
            System.out.println("------------------------------------");    
            if(entity != null){  
                                  
                //响应内容  
                System.out.println(EntityUtils.toString(entity));  
                  
                System.out.println("----------------------------------------");  
                // 响应内容长度  
                System.out.println("响应内容长度:"+entity.getContentLength());  
            }  
              
        } catch (ClientProtocolException e){  
            e.printStackTrace();  
        } catch (IOException e){  
            e.printStackTrace();  
        }finally{
        	try {
        		//使用完后务必关闭HttpClient
				closeableHttpClient.close();
			} catch (IOException e) {
				// TODO 自动生成的 catch 块
				e.printStackTrace();
			}
        }


阅读更多
下一篇java POI 下拉选的实现
想对作者说点什么? 我来说一句

httpclient简单示例

2015年02月08日 1.88MB 下载

没有更多推荐了,返回首页

关闭
关闭