Próbowałem GET
użyć danych binarnych request
i miałem coś takiego:
var requestSettings = {
method: 'GET',
url: url,
};
request(requestSettings, function(error, response, body) {
// Use body as a binary Buffer
}
Ale body
zawsze o kilka bajtów różniło się od oczekiwanego. Po dalszych badaniach odkryłem, że request
założono, że body
jest to łańcuch i zastąpiłem wszystkie bajty inne niż Unicode.
Próbowałem dodać
encoding: 'binary'
do requestSettings
ale to nie pomogło.
Jak mogę uzyskać dane binarne?
encoding: null
to jedyna opcja, która działa. I - bardzo słabo udokumentowana. W dokumentacji żądania węzła powinno być oczywiste ostrzeżenie o tym, jak aby pobrać czyste dane binarne. Dzięki!Zaakceptowana odpowiedź nie rozwiązała mojego problemu. Jakoś pomyślałem, że to
gzip: true
zadziałało.źródło