快递路由器 - :id?

glo*_*log 21 node.js express

真正简单的问题:我看到很多书籍/代码片段在路由器中使用以下语法:

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

我不确定如何解释这里的路线......它会路由'/ todos/anything'吗?然后抓住'任何'并且处理变量ID?我该如何使用该变量?我确信这是一个快速的答案,我之前没有看到过这种语法.

小智 20

这是一个快速的中间件.

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


bil*_*ash 16

在您的代码上,即快递框架中间件,如果您想使用该路由获取服务器代码中的任何ID,您将获得该ID req.params.id.

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