【问题标题】:Why does HTTP::Response::decoded_content sometimes return undef even when content() returns data? [closed]为什么即使 content() 返回数据,HTTP::Response::decoded_content 有时也会返回 undef? [关闭]
【发布时间】:2010-01-31 20:55:55
【问题描述】:

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

【问题讨论】:

    标签: perl encoding gzip lwp


    【解决方案1】:

    这并不能直接回答您的问题,但是当我遇到这样的事情时,我会查看模块的源代码以了解它在做什么,并像调试任何其他代码一样调试代码。查看HTTP::Message 中的decoded_content 方法可以准确地向您展示它所期望的。检查您的回复是否符合预期。

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 2015-04-12
        • 2020-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-05-26
        • 2012-06-13
        • 2021-08-15
        相关资源
        最近更新 更多