检索URL参数

问题描述 投票:0回答:2

我正在创建一个应用,其中每个列表将具有多个任务。

用于创建新任务的URL类似于/lists/:listId/tasks

在我的app.js中,我正在将该URL重定向到名为tasks.js的特定路由文件:

app.use('/lists/:listId/tasks', tasks);

然后在我的tasks.js中,我正在执行以下操作:

router.post('/', (req, res) => {
  console.log(req.params.listId) //This doesn't work.
});

如何从tasks.js中获取参数?。另外,如果有更好的方法来实现我想要的功能,我将非常高兴看到它。

node.js express mean-stack
2个回答
0
投票

我认为这应该起作用

app.get('/lists/:listId/tasks', (req, res) => {
  console.log(req.params.listId);
})

重定向!试试这个

app.get('/lists/:listId/tasks', (req, res) => {
  console.log(req.params.listId);
  //if you have a route set up already 
  res.redirect('/task');
})

0
投票

您可以点击此链接https://github.com/expressjs/express/issues/696

如果将参数路由放置到tasks.js文件,则该问题将自动解决。喜欢:

app.js

app.use('/lists', tasks);

tasks.js

router.post('/:listId/tasks', (req, res) => {
  console.log(req.params.listId);
});

它将正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.