快速路由器 - :ID?

问题描述 投票:13回答:4

真正简单的问题家伙:我看很多书/代码片段使用路由器的语法如下:

app.use('/todos/:id', function (req, res, next) {
  console.log('Request Type:', req.method);
  next();
});

我不知道如何解释这里的路线... ...它的路线“/待办事项/什么”?然后抢“东西”和治疗是可变的ID?我怎么使用变量?我敢肯定,这是一个快速的答案,我只是还没有见过这种语法。

node.js express
4个回答
18
投票

这是一个明确的中间件。

在这种情况下,是的,它会路线/todos/anything,然后req.params.id将被设置为'anything'


16
投票

在你的代码,这是快递架构的中间件,如果你想使用这条路线来获得服务器代码的ID,你将得到req.params.id该ID。

app.use('/todos/:id', function (req, res, next) {
  console.log('Request Id:', req.params.id);
  next();
});

2
投票

是的,在你的榜样,你会得到qazxsw POI设置为“任何”


0
投票
req.params.id

同样,对于您的代码:

Route path: /student/:studentID/books/:bookId
Request URL: http://localhost:xxxx/student/34/books/2424
req.params: { "studentID": "34", "bookId": "2424" }

app.get('/student/:studentID/books/:bookId', function (req, res) {
  res.send(req.params);
});

推荐问答