【发布时间】:2019-12-11 13:19:33
【问题描述】:
npm-request 库允许我使用良好的 JSON 样式语法构造 HTTP 请求,如下所示。
request.post(
{
url: 'https://my.own.service/api/route',
formData: {
firstName: 'John',
lastName: 'Smith'
}
},
(err, response, body) => {
console.log(body)
}
);
但为了进行故障排除,我确实需要查看 request 的 HTTP 消息正文,因为它会出现在网络上。理想情况下,我正在寻找带有 Node.js Buffer 对象的原始字节表示。似乎很容易得到这个响应,但不是请求。我对multipart/form-data特别感兴趣。
我查看了文档和 GitHub 问题,但无法弄清楚。
【问题讨论】:
-
使用网络嗅探器查看实际通过套接字发送的内容,与您的 node.js 代码无关。
-
我不是特别想设置网络嗅探器和处理拦截 TLS 连接的麻烦。我想在代码中做到这一点。
-
如果它是您自己的目标服务器,您可以暂时允许 http 仅用于调试或仅来自您的端点或仅在您的本地测试网络中,以避免 TLS 用于嗅探器。有时你需要创造有利于调试的条件。
-
@jfriend00 这不是我自己的服务器。
-
我不知道这是否是一个可以接受的答案,所以我现在将其作为评论留下,但您可以修改文件
node_modules/request.js并在此行之后添加console.log(arguments):github.com/request/request/blob/master/request.js#L1493
标签: javascript node.js http npm-request