gpt4 book ai didi

express - 在 Express 上使用带有 `app.use` 的路由参数

转载 作者:行者123 更新时间:2023-12-04 01:41:07 27 4
gpt4 key购买 nike

我不能在 app.use 中使用路由参数在 Express 4.16.2 上。

我有这样的声明:

app.use('/course-sessions/:courseSessionId/chapter-sessions', chapterSessionsRouter)

并且,在章节 session 路由器中:
// Index.
router.get('/', ...resource.indexMethods)

当我收到 '/course-sessions/0/chapter-sessions/' ,我有404。

然后我正在尝试这样的声明:
app.get('/course-sessions/:courseSessionId/chapter-sessions', ...chapterSessionResource.indexMethods)

现在我得到了我想要的结果。所以路由参数不适用于 app.use .

在我研究的过程中,我得到了 this GitHub issuethis pull request这结束了问题。但问题似乎仍然存在。还是我做错了什么?

最佳答案

您必须以不同的方式设置路由器,请尝试使用 mergeParams访问父路由中的参数。

let router = express.Router({ mergeParams: true });

请参阅文档: http://expressjs.com/en/api.html

关于express - 在 Express 上使用带有 `app.use` 的路由参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47950738/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com