Javascript Express.js-允许无限子例程,但至少允许一个

Javascript Express.js-允许无限子例程,但至少允许一个,javascript,node.js,express,routes,Javascript,Node.js,Express,Routes,我想允许/example/…之后的任何子例程 有效URL的示例: /示例/一 /例/一/二 /示例/一/二/三 但这样做: server.get('/example/*',(req,res)=>{ // ... }) 也允许不带任何子例程的/example。我想避免这种情况。我怎么做?有没有不使用正则表达式的方法 非常感谢你 您可以简单地定义两条路由-一条用于/example,另一条用于所有/example-子例程,但您需要确保顺序正确: app.get('/example', (req,

我想允许
/example/…
之后的任何子例程

有效URL的示例:

  • /示例/一
  • /例/一/二
  • /示例/一/二/三
但这样做:

server.get('/example/*',(req,res)=>{
// ...
})
也允许不带任何子例程的
/example
。我想避免这种情况。我怎么做?有没有不使用正则表达式的方法


非常感谢你

您可以简单地定义两条路由-一条用于
/example
,另一条用于所有
/example
-子例程,但您需要确保顺序正确:

app.get('/example', (req, res) => {     
    // render default page
});

app.get('/example/*', (req, res) => {
   // do other stuff
});

当有人去
/example
而没有任何子路由时,您希望发生什么?我正在使用Next.js,因此它将呈现默认的
页面/example.js
页面…您不希望发生这种情况?是的,但是对于
/example/some/subcure
我希望以不同的方式处理。我想要的是,上面的代码不为
/example
输入,只为
/example/subcure
输入,这是否回答了您的问题?是的,我知道。。。但是我想避免在上面添加
app.get('/example',handler)
。。。但无论如何,你的答案是正确的。非常感谢。