状态为 400(错误请求)的请求未通过管道传输正确的正文



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

我们正在使用请求为代理提供动力。它适用于所有请求,我们甚至可以传输大文件(400MB(,所有方法都可以使用,等等。

我们创建了这样的选项对象:

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(。Logger记录正确的身体,但将错误的身体运送到客户。客户仅接收

"不好的请求"。而不是包含错误原因的完整JSON对象。

我们使用iisnode(for iis插件(运行节点。当我们运行IISNODE时,它在本地工作,但是当我们部署它时,它不起作用。

有什么想法吗?是要求吗?是管道吗?是iisnode吗?

经过许多挣扎和研究并分解整个节点应用程序,最终占据了身体并用Statustext取代其内容...

最新更新