如何在express(node.js)中获取路径变量

Qas*_*har 2 javascript node.js express

我正在尝试使用req.params获取路径变量“ userId”的值,但我却未定义,如果有人可以指导我解决这个问题,我将非常感谢他。我将我的代码放在下面。我已经看过一些示例,但是那些示例也在以这种方式运行,我不知道我的代码出了什么问题。
谢谢,

控制器的父路由器

app.use("/user/:userId/group",groupController);
Run Code Online (Sandbox Code Playgroud)

控制器中的动作

Router.post("/", function (req, res, next) {

    var group = new Group(req.body);

    console.log(req.params);

    group.userId = req.params.userId;

    group.save(new dataCallbacks(req, res, next, "Group").insert());
});
Run Code Online (Sandbox Code Playgroud)

mic*_*lem 6

我认为您的路线有误,您无法路由至该地点/user/:userId/group并发布/该路线没有任何意义。我的意思是获取userId参数,您应该发布到/user/:userId/group

路由文件route.js

var ctrl = require('controller.js');

app.route('/user/:userId/group').post(ctrl.doIt);
Run Code Online (Sandbox Code Playgroud)

控制器文件controller.js

exports.doIt = function(req, res, next) {
    var group = new Group(req.body);

    console.log(req.params);

    group.userId = req.params.userId;

    group.save(new dataCallbacks(req, res, next, "Group").insert());
});
Run Code Online (Sandbox Code Playgroud)