我在jQuery中有这个:
$.ajax(
{
type: 'POST',
data : mydata,
url : '/routerfunction',
dataType : 'String',
success : function(data)
{
//do stuff
},
error: function(xhr, status, error)
{
console.log(error);
console.log(xhr);
console.log(status);
},
}
我在index.js(节点)
中有这个router.post('/routerfunction/:mydata', function(req,res)
{
//do stuff
}
我在app.js(节点)
中有这个app.use('/', index);
app.use('/users', users);
当我对routerfunction发出POST请求时,出现404错误。我真的试图找到这个bug,但我不能..这个bug会在哪里?提前谢谢。
答案 0 :(得分:1)
这条路线:
router.post('/routerfunction/:mydata', ...
需要以下网址:
/routerfunction/SOMETHING
并且不匹配:
/routerfunction
所以404在这里是正确的。
你需要:
router.post('/routerfunction', ...
匹配该请求。
请注意,您还需要一个body-parser
来解析正文,其中包含您可以使用req.body
访问的AJAX请求中发送的数据 - 请参阅某些答案例子: