gpt4 book ai didi

javascript - 从 HTTP POST 请求中检索 JSON

转载 作者:行者123 更新时间:2023-11-30 21:08:50 24 4
gpt4 key购买 nike

我有以下功能(基本上直接取自另一个 SO 问题的答案):

function makePostRequest(requestURL, postData) {
request(
{
url: requestURL,
method: "POST",
json: true,
body: postData
},
function(error, response, body) {
console.log(response);
});
}

当我使用正确的 requestURL 调用它时,我成功到达了这条路线:

router.post("/batchAddUsers", function(req, res) {
console.log("Reached batchAddUsers");
});

我一直在尝试检索随请求一起发送的 postData,但无济于事。 req.paramsreq.body 都是 {}。我对如何引用请求中传递的包含 body 的对象一无所知。

我阅读了整个 console.log(req) 并没有发现任何有用的东西。我以前做过这种事情,只是请求是由表单发出的,而且 req.body 非常有效。现在我正在“手动”执行请求,它不再起作用了。整个事情都在 Node.js 上运行。

我做错了什么?

最佳答案

我想你没有安装 body-parser

要在 Express.js 版本 4 及更高版本中处理 HTTP POST 请求,您需要安装名为 body-parser 的中间件模块。

body-parser 提取传入请求流的整个主体部分并将其公开在 req.body 上。

中间件之前是 Express.js 的一部分,但现在您必须单独安装它。

这个 body-parser 模块解析使用 HTTP POST 请求提交的 JSON、缓冲区、字符串和 url 编码数据。使用 NPM 安装 body-parser,如下所示。

npm install body-parser --save

关于javascript - 从 HTTP POST 请求中检索 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46340209/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com