我在客户端发送一个 GET 请求:
$.ajax({
url: '/update',
type: 'get',
data: {
"key": key,
"value": value
},
success: function (data, err) {
}
})
然后在 Node 端,我要获取参数
var showParam = function (req, res) {
if (req.body) {
for (var key in req.body) {
console.log(key + ": " + req.body[key]);
}
res.send({status:'ok',message:'data received'});
} else {
console.log("nothing received");
res.send({status:'nok',message:'no Tweet received'});
}
}
app.get('/update', function(req, res){
showParam(req, res);
})
shell 显示 body 是空的和未定义的。
但是当我将 get
更改为 post
(在客户端和服务器端),一切正常,我可以正确获取参数。
我的代码有什么问题?我错过了什么吗?
最佳答案
如果您发出 GET 请求,URL 参数不是正文的一部分,因此不会被 bodyParser 中间件解析。
要访问查询参数,只需引用 req.query
关于node.js - node express的bodyParser获取不到GET请求中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14011806/