node.js表达app - router.post URI无效

时间:2016-10-19 18:34:49

标签: javascript node.js rest express

背景资料

我正在使用express工作我的第一个node.js应用程序。 我在某个地方有bug,因为我似乎无法匹配我在post方法中使用URI指定的URI。

代码

router.post('/widget/:widgetnum/:rules', function(req, res, next) {

        var widgetnum = req.params.widgetnum;
        var rules = req.params.rules;
        if (debug) { winston.log('info', 'router.post) invoked with : ' + widgetnum)};
        if (debug) { winston.log('info', 'router.post) invoked with : ' + rules)};
        if (!valid_widget(widgetnum)) { 
                console.log('trigger 400');
                res.status(400).send("Invalid widgetnum");
        }
        if (rules==null)  {
                console.log('trigger 400');
                res.status(400).send("Invalid Time Conditions");
        }       
        res.send('hello');

});

我正在测试的地址如下:

 http://myserver:3000/widget/123123/00:00:00_00:00:00_someothervalue

我希望“123123”会被捕获为“widgetnum” 和“00:00:00_00:00:00_someothervalue”作为“规则”

我确信这是一个非常基本/简单的东西,我很想念。 在此先感谢您的时间。

编辑1

这是我在命令行上看到的 - 证明我正在发送POST请求......

devserver:/var/www/widgettest# DEBUG=widgettest:* npm start

> widgettest@1.0.0 start /var/www/widgettest
> node ./bin/www

  widgettest:server Listening on port 3000 +0ms
POST /widget/11231231234/rules 404 713.167 ms - 1025
POST /widget/11231231234 404 75.216 ms - 1025

0 个答案:

没有答案