Запросы со статусом 400 (неверный запрос) не передают правильное тело - PullRequest
0 голосов
/ 24 апреля 2018

request 2.83.0 node 8.11 yarn 1.5.1 Operating System: Windows Server 2012 R2

Мы используем запрос для включения нашего прокси.Он хорошо работает для всех запросов, и мы даже передаем большие файлы (400 МБ), все методы работают и т. Д.

Мы создаем наш объект параметров следующим образом:

let options = {
  method: req.method,
  url: url,
  headers: proxyHelper.getHeaders(req.headers)
};
// The auth header needed to make the request
options.headers['Authorization'] = `Bearer ${token}`;

И затемотправьте его на запрос.

request(options, (err, responseFromApi, body) => {
      logger.log("Body from API")
      logger.log(body)
  }).pipe(res);

Проблема возникает в запросах, которые возвращают «Плохой запрос» в теле (код состояния 400).Регистратор регистрирует правильное тело, но передает клиенту неправильное тело.Клиент получает только

«Плохой запрос».Вместо полного JSON-объекта, в котором содержится причина ошибки.

Мы используем iisnode (плагин для IIS) для запуска Node.Он работает локально, когда мы запускаем iisnode, но когда мы его развертываем, он не работает.

Есть идеи?Это запрос?Это труба?Это iisnode?

1 Ответ

0 голосов
/ 26 апреля 2018

После долгих попыток, исследований и разрушения всего приложения узла, в конце концов IIS взял тело и заменил его содержимое на statusText ...

...