我有一个提供文件列表的应用程序。
应用程序必须响应以下路由:
/company/:id
/company/:id/dir
/company/:id/dir/dir
这/company/:id
是没有path
指定路径的路由,例如root
目录。我在想类似的东西app.get('/company/:id/:path', ...
显然不起作用。
如何定义一个响应所有示例的路线?
使用/company/:id*
(注意尾随星号)。
完整的例子
var express = require('express')();
express.use(express.router);
express.get('/company/:id*', function(req, res, next) {
res.json({
id: req.params['id'],
path: req.params[0]
});
});
express.listen(8080);
问题内容: 我有一条看起来像这样的路线: 但是,这行不通-如果我打电话,它会到达路线,但是如果我打电话,它不会。 是否可以有一个可选的splat参数,或者我必须使用正则表达式来检测到这一点? 编辑 : 更清楚地说,这是我要达到的要求: 第一和第二个参数是 必需的 第一个参数是静态的,第二个参数是命名的参数。 可以附加任意数量的 可选 附加参数,并且仍然可以实现。 问题答案: 这适用于Express
我正在使用执行REST调用,并且我有一个包含斜杠(即20/20)的uriparam > 如果我不执行httpEncoder,我将获得一个rest调用:http://www.nowhere.com/?variable=20/20,值变量gets仅为20。 如果我执行httpEncoder,变量的值是%2f(它是正确的,这是我想要的值),但是当我执行其余的调用时,它会调用:http://www.now
将路由链接到参数 显示特定产品详细信息的组件的路由需要该产品ID的路由参数。我们可以使用以下实现: 注意:product-details路由的路径中的 ,它将参数放在路径中。例如,要查看ID为5的产品的产品详细信息页面,必须使用以下URL:localhost:3000/product-details/5 注意,指令传递一个数组,该数组指定路径和路由参数。或者,我们可以使用JS跳转: Product
路由参数 路由分组及规则定义支持指定路由参数,这些参数主要完成路由匹配检测以及行为执行。5.1版本极大改进了路由参数的用法。 路由参数可以在定义路由规则的时候直接传入(批量),不过5.1采用了更加面向对象的方式进行路由参数配置,因此使用方法配置更加清晰。 参数 说明 方法名 method 请求类型检测,支持多个请求类型 method ext URL后缀检测,支持匹配多个后缀 ext deny_ex
使用redux和反应路由器,我想访问路由指定的组件以外的组件上的路由参数。 我已经对react-router、redux和react-router-redux进行了如下设置,我想从我的redux存储访问reportId参数。 我已经尝试连接react-redux路由器来存储路由状态,但是我发现除了活动路由的完整路径之外,redux内部没有任何有用的存储。这让我可以选择从redux中的路径解析出re
文档指出,定义路由的首选方式是包含一个尾随斜杠: 这样,客户端就可以或并接收相同的结果。 但是,发布的方法没有相同的行为。 在这里,如果您,那么如果您不是在调试模式下运行,它将以失败,或者如果您是在调试模式下运行,它将以以下通知失败: 请求已发送到此URL(HTTP://localhost:5000/foo),但路由系统自动发出重定向到“HTTP://localhost:5000/foo/”。UR