发现某网站获取到的内容都是乱码,看起来是二进制的,以为加密了. 但是用postman又正常
请求其他网站也正常.
对比了不同网站的返回结果,发现Content-Encoding不一样,其他网站是空,这个网站返回了gzip
原因出在此网站使用了压缩技术 ,估计是这个网站上杂七杂八的东西过多,为了节省流量开启了压缩技术.
以前用lwp都是$response->content 然后再decode, 但是这次行不通了,decode可不支持二进制的.
实际上lwp早就有个相应的decode函数,就是如下,
my $res = $response->decoded_content(charset => 'utf8');
记录一下,免得其他人掉坑里了.