Ich habe versucht, GET
Binärdaten mit zu verwenden request
, und hatte so etwas wie:
var requestSettings = {
method: 'GET',
url: url,
};
request(requestSettings, function(error, response, body) {
// Use body as a binary Buffer
}
War body
aber immer ein paar Bytes anders als erwartet. Nach weiteren Untersuchungen stellte ich fest, dass request
angenommen body
wird , dass es sich um eine Zeichenfolge handelt, und ersetzte alle Nicht-Unicode-Bytes.
Ich habe versucht hinzuzufügen
encoding: 'binary'
zu requestSettings
aber es hat nicht geholfen.
Wie kann ich die Binärdaten erhalten?
encoding: null
ist die einzige Option, die funktioniert. Und - sehr schlecht dokumentiert. In der Node Request-Dokumentation sollte eine offensichtliche Warnung darüber enthalten sein, wie um reine Binärdaten abzurufen. Danke!Die akzeptierte Antwort hat mein Problem nicht gelöst. Ich dachte irgendwie, dass das
gzip: true
funktioniert.quelle