我是靠谱客的博主 欢喜龙猫,最近开发中收集的这篇文章主要介绍HttpClient4.5.3设置代理以及请求配置方式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述


多读多写多记录,多学多练多思考。----------- Banana.Banuit(香柚帮)


//设置代理IP、端口、协议(请分别替换)
HttpHost proxy = new HttpHost("你的代理的IP", 8080, "http");

//把代理设置到请求配置
RequestConfig requestConfig = RequestConfig.custom()
                .setProxy(proxy)                //设置代理
                .setConnectTimeout(120000)      //连接时间60s
                .setSocketTimeout(120000)       //传输时间60s
                .build();

//实例化CloseableHttpClient对象
CloseableHttpClient httpClient = HttpClients.custom().setDefaultRequestConfig(requestConfig).build();

String uri = "http://www.banuit.com";
// 定义请求的参数
//URI uri = new URIBuilder("http://www.banuit.com/s").setParameter("name", "banana").build();

//访问目标地址
HttpGet httpGet = new HttpGet(uri);

//请求返回
CloseableHttpResponse httpResponse = null;
try {
    httpResponse = httpClient.execute(httpGet);
    if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
         //请求体内容
         String content = EntityUtils.toString(response.getEntity(), "UTF-8");
         //内容写入文件
         FileUtils.writeStringToFile(new File("D:\dev\baidu.html"), content, "UTF-8");
         System.out.println("内容长度:"+content.length());
    }
} catch (Exception e) {
    e.printStackTrace();
} finally {
    if (httpResponse != null) {
        httpResponse.close();
    }
    //相当于关闭浏览器
    httpClient.close();
}

已过时的类和方法对比

//3.X
HttpClient client=new DefaultHttpClient();
client.setConnectionTimeout(120000); 
client.setTimeout(120000);
//4.X
HttpClient httpClient=new DefaultHttpClient();
httpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,120000);//连接时间
httpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT,120000);//数据传输时间

 

最后

以上就是欢喜龙猫为你收集整理的HttpClient4.5.3设置代理以及请求配置方式的全部内容,希望文章能够帮你解决HttpClient4.5.3设置代理以及请求配置方式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(78)

评论列表共有 0 条评论

立即
投稿
返回
顶部