文档章节

第5个HttpClient 例子,使用代理IP

诺岚
 诺岚
发布于 2017/08/29 11:57
字数 177
阅读 32
收藏 0

代码:

import org.apache.http.HttpEntity;
import org.apache.http.HttpHost;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.InputStream;


public class Demo02 {
    public static void main(String[] args) throws Exception {
        //创建HttpClient实例
        CloseableHttpClient client = HttpClients.createDefault();
        //创建httpget实例
        HttpGet get = new HttpGet("https://www.oracle.com/us/assets/hp10p2-oracle-code-sprite-3861772.jpg");
    //设置代理IP
        HttpHost proxy=new HttpHost("183.232.65.203", 3128);
        RequestConfig config=RequestConfig.custom().setProxy(proxy).build();
        get.setConfig(config);
        //设置请求头信息
        get.setHeader("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0");
        //执行http get 请求
        CloseableHttpResponse execute = client.execute(get);
        //获取返回的实体
        HttpEntity entity = execute.getEntity();
        if (entity!=null){
            //输入返回的内容
            System.out.println("Content-Type:"+entity.getContentType().getValue());
            InputStream inputStream=entity.getContent();
            FileUtils.copyToFile(inputStream, new File("C://dljd5.jpg"));
        }

        //response 关闭
        execute.close();
        //httpclient 关闭
        client.close();
    }
}

运行结果:

 Demo02
Content-Type:image/jpeg; charset=

Process finished with exit code 0

© 著作权归作者所有

共有 人打赏支持
诺岚
粉丝 0
博文 96
码字总数 169868
作品 0
广州
程序员
HTTP协议和HttpClient的入门

HTTP协议的发展史没有了解,是给予请求与响应模式的、无连接、无状态的应用层的协议。 HTTP协议 HTTP协议的URL HTTP URL(URL是一种特殊类型的URI,包含了勇于查找某个资源的足够的信息)的格式...

凹凸口天
2013/07/15
0
0
HttpClient4.x:Get和Post提交数据

HttpClient是一款用Java写的非常好用的基于Http协议的客户端编程工具包。具体举例来讲,用它可以模拟form表单提交数据动作,可以模拟访问网页动作及得到网页源码内容等等,这两点或许是我们在...

liangtee
2012/12/02
0
0
apache/commons/httpclient学习笔记

apache/commons/httpclient学习笔记 参考资料: http://www.systinet.com/doc/wasp_uddi/uddi/igpreliminary.html 教程中的一个例程,可以下载。 来源:竹笋炒肉 虽然用telnet这样的程序都可把...

eric luo
2011/03/31
0
0
【J2EE系列】HttpClient 学习整理 [转]

HttpClient 是我最近想研究的东西,以前想过的一些应用没能有很好的实现,发现这个开源项目之后就有点眉目了,令人头痛的cookie问题还是有办法解决滴。在网上整理了一些东西,写得很好,寄放...

磊神Ray
2012/01/12
0
0
httpClient4.2官方文档研究

前言 超文本传输协议(HTTP)也许是最常用的在互联网上使用的协议。 Web服务,支持网络设备和网络计算的增长继续扩大用户驱动的Web浏览器的HTTP协议之外的作用,同时增加了一些应用程序需要H...

harries
2015/08/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

php 使用redis锁限制并发访问类

1.并发访问限制问题 对于一些需要限制同一个用户并发访问的场景,如果用户并发请求多次,而服务器处理没有加锁限制,用户则可以多次请求成功。 例如换领优惠券,如果用户同一时间并发提交换领...

豆花饭烧土豆
15分钟前
0
0
Linux环境搭建 | 手把手教你配置Linux虚拟机

在上一节 「手把你教你安装Linux虚拟机」 里,我们已经安装好了Linux虚拟机,在这一节里,我们将配置安装好的Linux虚拟机,使其达到可以开发的程度。 Ubuntu刚安装完毕之后,还无法进行开发,...

良许Linux
17分钟前
0
0
Nginix开启SSL支持HTTPS访问(自签名方法)

Nginix开启SSL支持HTTPS访问(自签名方法) 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器...

openthings
33分钟前
0
0
(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0
jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部