我正在尝试这样做,但它不起作用。
app.get("/|/:enter");
我希望一个app.get
同时路由/
和/:enter
。
更新
两个
app.get("/|/:enter");
和
app.get("/:enter|/");
不要将完整的“enter”字符串发送到params中间件解析,id
变量只是“e”。
答案 0 :(得分:0)
需要
app.get("/:enter|/")
*颠倒
它以某种方式以其他方式覆盖所有其他路线。
答案 1 :(得分:0)
app.get(/^(\/|\/:enter)$/, function(){...});
答案 2 :(得分:0)
不能合并正则表达式和params XD
答案 3 :(得分:0)
在您的情况下,您可以将:enter
标记为可选参数:
app.get('/:enter?')
此外,您可以使用express-route-params将验证应用于:enter
参数,以便仅当enter
满足特定条件时路线才会匹配。例如:
app.param('enter', /^\w+$/)
这样你可以将regexp和params结合起来;)