2010-01-31 55 views
1

我已经使用LWP功能来处理gzip编码的内容,如here所述,但在某些情况下,我至少在我测试过的一个网站上随机获得了意外结果:$response->decoded_content可能变得未定义,而$response->content仍然返回原始的gzip编码响应。即使没有内部字符集解码(decoded_content(charset => 'none'))也会得到相同的结果。为什么即使content()返回数据时,HTTP :: Response :: decoded_content有时也会返回undef?

回答

2

服务器可能没有在响应中正确设置Content-Encoding?在任何情况下,请查看工作和非工作响应的标题,并查找显着差异。

3

这并不直接回答你的问题,但是当我遇到这样的事情时,我会看看模块的来源,看看它在做什么,并像其他代码一样调试代码。查看HTTP::Message中的decoded_content方法可以准确显示出您的期望。检查您的回复是否具有预期的所有内容。

相关问题