2010-01-31 20 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方法可以準確顯示出您的期望。檢查您的回覆是否具有預期的所有內容。

相關問題