1

私は mikeal/request を使用しています。私が使用するとき、私はいくつかのウェブページに問題があります:

var url='http://www.youtube.com/watch?v=YbP1K-bQB6g&list=SP018BE450221B431B';
var request = require('request');
request(url, function (error, response, body) {      
    console.log(body);      
})

これは、HTML で適切にフォーマットされた本文を出力します。異なる URL を使用すると、次のように表示されることがあります。

ÿÿ´Wmo7þ|ú¦{@ã »ZÉ9ŸãÄ2 ØªOl+¶Ü4W½K­èì’[’+K.úé~ ecc...

しかし、ブラウザを介してナビゲートすると、ページがはっきりと見えます。なにか提案を?私はすでに StringDecoder でデコードしようとしましたが、何もしませんでした... エラーを取得するためにこの URL を使用しています:

http://www.agi.it/estero/notizie/201210250805-est-rt10017-performance_stellari_e_10_ore_autonomia_e_gia_ipad_mini_mania
4

1 に答える 1

2

応答は gzip されているようです。サーバーが要求ヘッダーを受け入れることができない場合は、応答をデコードする必要があります。

編集:次のようにリクエストヘッダーを明示的に設定できます:

request({ url: <your url>, headers: { 'accept-encoding': 'identity' }}, function (error, reponse, body) {
  // You really should receive an un-encoded body, now
});
于 2012-10-25T11:29:36.987 に答える