node.js - простые HTTP-запросы со сжатием gzip / deflate

Я пытаюсь выяснить, как лучше всего отправлять запросы HTTP / HTTPS и обрабатывать сжатые ответы gzip / deflate вместе с печенье.

Лучшее, что я нашел, это https://github.com/mikeal/request , который обрабатывает все , кроме сжатия. Есть ли модуль или метод, который сделает все, о чем я прошу?

Если нет, могу ли я каким-то образом объединить запрос и zlib? Я попытался объединить zlib и http.ServerRequest, и это с треском провалилось.

Спасибо!

45
задан wridgers 20 December 2013 в 11:04
поделиться

1 ответ

Все ответы здесь не работали, и я возвращал необработанные байты вместо этого и эти gzip, флаг не работал также. Как оказалось, Вы должны установить кодирование на null, чтобы препятствовать тому, чтобы запросы преобразовали ответ на кодирование utf-8 и вместо этого сохраняете двоичный ответ.

const request = require("request-promise-native");
const zlib = require("zlib");

const url = getURL("index.txt");
const dataByteBuffer = await request(url, { encoding: null });
const dataString = zlib.gunzipSync(response);
0
ответ дан 26 November 2019 в 20:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: