http代理报文通过发包实现代理请求网页内容

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了http代理报文通过发包实现代理请求网页内容相关的知识,希望对你有一定的参考价值。

工作中,我们难免需要通过TCP/IP协议发送报文来直接请求网页内容(比如爬虫工具),有同学问如何通过HTTP代理来请求网页,其实我们只需要把报文稍稍修改下,发送给代理服务器即可实现。

基础不过关的朋友可搜索下 :HTTP报文、HTTP代理的原理;我这里就只写个实验报文。

下面是一个最基本的HTTP请求报文,将报文发送到tl.godok.cn:80,可实现网页的请求

GET /ip.php HTTP/1.1
Host:tl.godok.cn
Connection:keep-alive

下面是一个同过HTTP代理请求网页的报文

GET http://tl.godok.cn/ip.php HTTP/1.1
Host:tl.godok.cn
Proxy-Connection:keep-alive

代理请求的报文跟直接请求的报文相似,只需要注意3点即可:

1. 报文发送给代理服务器,不发送给最终请求地址的服务器

2. 报文第一行的URI 路径要写完整的

3. Connection 改成 Proxy-Connection

以上是关于http代理报文通过发包实现代理请求网页内容的主要内容,如果未能解决你的问题,请参考以下文章

TCP的请求代理与报文转发

HTTP报文详解

HTTP报文

跨平台web调试代理工具---whistle

HTTP 报文

改善程序性能和代码质量:通过代理模式组合HTTP请求