向节点发布请求返回404

时间:2017-07-24 14:58:31

标签: javascript jquery node.js express

我在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会在哪里?提前谢谢。

1 个答案:

答案 0 :(得分:1)

这条路线:

router.post('/routerfunction/:mydata', ...

需要以下网址:

/routerfunction/SOMETHING

并且不匹配:

/routerfunction

所以404在这里是正确的。

你需要:

router.post('/routerfunction', ...

匹配该请求。

请注意,您还需要一个body-parser来解析正文,其中包含您可以使用req.body访问的AJAX请求中发送的数据 - 请参阅某些答案例子: