当 php 抓包 遇到 Transfer-Encoding chunked 的解决办法

之前用php 抓包数据, 感觉还挺方便的, 今天在操作一个验证码的时候, 有相关经验的都知道

用 curl 获取图片顺便把cookie保存下来, 平时都是这么干坏事的.  


但是今天在抓取某个盘的验证码图片, 总是获取到错误的数据.  相当郁闷.  用浏览器network 查看了一遍所能看到的所有头部信息

发现不见了这个最重要的参数,  这样浏览器就不知道什么时候数据传输结束. 

Coontent-Length: xxxx

又发现了一个  Transfer-Encoding : chunked   ,  字面上的意思是说传输编码采用分块.    

找到问题了.  难怪一直取到错误的, 原来是给分块传输了,  之前没有听说过. (见识真小)

百度了一下,   了解到这个是http 1.1 的新协议,  具体可以查看百度百科  

找到问题就好办了.    既然这是  http 1.1 的. 那我把请求改成 http 1.0 不就好了.   http 1.0 是不支持这个协议的.

在curl加一行  

curl_setopt($ch, CURLOPT_HTTP_VERSION, '1.0');

问题解决了!  


当 php 抓包 遇到 Transfer-Encoding chunked 的解决办法
版权声明:若无特殊注明,本文皆为《 张贺宇 》原创,转载请保留文章出处。
本文链接:当 php 抓包 遇到 Transfer-Encoding chunked 的解决办法 http://zceo.me/post-50.html
正文到此结束

点击下方支持贵站

点击支持下贵站吧
点击支持下贵站吧

热门推荐

发表吐槽

你肿么看?

你还可以输入 250 / 250 个字

嘻嘻大笑可怜吃惊害羞调皮鄙视示爱大哭开心偷笑嘘奸笑委屈抱抱愤怒思考日了狗

评论信息框

吃奶的力气提交吐槽中...


既然没有吐槽,那就赶紧抢沙发吧!