Задать вопрос
@NeTLeaDeR

Как декодировать ответ HTTP?

Всем привет. Пытаюсь раскурочить приложение чтобы сделать автореггер и наткнулся на следующую проблему.

Слаб в мат. части, поэтому прошу не кидать тапками если что-то где-то буду не прав ;)

Проблема заключается в следующем: делаю POST запрос для регистрации
(Использую nodeJS и модуль request), запрос выполняется всё отлично (делаю такой вывод потому, что на почту приходит письмо с "кодом подтверждения"), но в body ответа такая кракозябра:
c719Db40.jpg

До этого я сниффал приложение Fiddler'om, была такая же проблема, но погуглив я нашёл, что она возникает из-за того, что в ответе отсутствует заголовок
Content-Encoding:deflate и Фиддлер не знает что его с этой строкой что-то ещё нужно сделать. Соответственно скриптом, который подставляет во все ответы нужного хоста данный заголовок я победил эту проблему и в Фиддлере всё ок.

Собственно сам вопрос: на сколько я понимаю, тело запроса просто сжато алгоритмом deflate и мне нужно его как-то вернуть в человеческий вид, каким образом мне это сделать?

Ну и сам код запроса собственно:

request.post({
    url: Endpoint,
    headers: {
        'Content-Type': 'application/json',
        'User-Agent': UserAgent
    },
    body: authRequest
}, (err, response, body) => {
    if(err) {
        return console.log('[AUTH] Ошибка регистрации: ' + err);
    }
    console.log(body);
});
  • Вопрос задан
  • 534 просмотра
Подписаться 3 Простой 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
nekt
@nekt
программист
Отправь в запросе `Accept-encoding: identity` и возможно тебе не придется ничего декодировать
https://developer.mozilla.org/en-US/docs/Web/HTTP/...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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