当前位置: 首页 > 知识库问答 >
问题:

如何在Express中将路径参数传递给子路由器

昌博易
2023-03-14

对于下面的代码

router.use('/campaigns/:campaign_uid', cache.node_cache, api_dynamic_campaign.router);

我有一个路由器路由到另一个路由器,看起来像这样:

router.get('/data.json', campaigns);

处理程序如下所示:

function campaigns(request, response){
    var campaign = api.get_campaign_from_request(request) || request.params.campaign_uid;
    api.route_handler(request, response, {"campaign":campaign});
}

我的问题是处理程序无权访问请求.params 中的campaign_uid。如何访问campaign_uid/传递给处理程序?

共有1个答案

逑和蔼
2023-03-14
router.get('/data.json', campaigns).Router({ mergeParams: true })

https://cedric.tech/blog/expressjs-accessing-req-params-from-child-routers

 类似资料:
  • 我已经使用FastAPI创建了一个简单的API,我正在尝试将URL作为任意的<code>路径</code>参数传递给FastAPI路由。 当我测试它时,它不起作用并抛出错误。我以这种方式测试它:

  • 例如,在具有分页列表的路由上,网址可能如下所示,表示我们已加载第二个网页: 使用指令和来传递查询参数。例如: 或者,我们可以使用服务通过JS跳转: 读取查询参数 See Official Documentation on Query Parameters

  • 我正在尝试使用http://localhost:3000/login?Id=1这样的查询参数来实现React路由器,我只能在我的登录路由中实现它,如果我将路径作为http://localhost:3000/然后重定向,但是,我想在整个应用程序中实现。如果我在其他路由上实现,它会匹配路由。这就是我的的样子,有人能指导我如何实现包括查询参数在内的所有路由路径吗?

  • 在我的Angular 2路由的一个模板(FirstComponent)中,我有一个按钮 first.component.html 我的目标是实现: 按钮点击->route to另一个组件,同时保留数据,而不使用另一个组件作为指令。 这是我试过的... 第一种方法 在同一个视图中,我存储、收集基于用户交互的相同数据。 First.Component.TS 通常通过ID路由到SecondCompone

  • 假设我有一个需求完全相同的测试场景,但有一个路径变量更改,如下所示: 方案:某些方案

  • 我正在使用react with react路由器。我正试图在react路由器的“链接”中传递属性 “链接”呈现页面,但不将属性传递给新视图。下面是查看代码 如何使用“链接”传递数据?