142

GETを使用してバイナリデータを作成しようとして、次のrequestようなものがありました。

var requestSettings = {
    method: 'GET',
    url: url,
};
request(requestSettings, function(error, response, body) {
    // Use body as a binary Buffer
}

しかし、body常に予想とは数バイト異なっていました。さらに調査した結果、request仮定bodyは文字列であり、すべての非Unicodeバイトが置き換えられていることがわかりました。

追加してみました

encoding: 'binary'

requestSettingsしかしそれは助けにはならなかった。

バイナリデータを取得するにはどうすればよいですか?

4

2 に答える 2

316

OK、たくさん掘り下げた後、私はそれrequestSettingsが持っているべきであることがわかりました:

encoding: null

そして、デフォルトの文字列ではなく、bodyタイプになります。Buffer

于 2013-02-13T13:46:19.900 に答える
0

受け入れられた答えは私の問題を解決しませんでした。私はどういうわけかそれがうまくいったと思ったgzip: true

于 2020-04-16T19:21:22.847 に答える