Javascript 排除Express.js路由中的单词列表
我在Express.js框架中有类似的东西 app.post('/:username/:slug',user.fn) 现在我想用一个正则表达式来检查slug是否等于某些单词(profile,album,等等),传递到下一个路径,并且不捕获slug和用户名Javascript 排除Express.js路由中的单词列表,javascript,regex,node.js,express,Javascript,Regex,Node.js,Express,我在Express.js框架中有类似的东西 app.post('/:username/:slug',user.fn) 现在我想用一个正则表达式来检查slug是否等于某些单词(profile,album,等等),传递到下一个路径,并且不捕获slug和用户名 有什么想法吗?你应该把更具体的路线放在第一位: app.post('/:username/profile', middlware) app.post('/:username/album', middleware) app.post('/:use
有什么想法吗?你应该把更具体的路线放在第一位:
app.post('/:username/profile', middlware)
app.post('/:username/album', middleware)
app.post('/:username/:slug', middleware)
但是,我也不知道你想实现什么目标,你应该把更具体的路线放在第一位:
app.post('/:username/profile', middlware)
app.post('/:username/album', middleware)
app.post('/:username/:slug', middleware)
不过,我也不知道你想要达到什么目的谢谢。现在我就这么做了。我已经在不同的文件中分开了我的路线,为了保持上面的顺序,我不得不处理几个路线文件。这就是为什么我试图找到一个正则表达式来排除路由中的一些单词,作为解决此类问题的更通用方法。您可以向变量添加正则表达式,如
app.post('/:username(jon | jack)/:slug',中间件)
但我不确定什么是受支持的,什么是不受支持的,因为除了有效值的枚举列表之外,我没有对它进行过任何测试,我认为它没有文档化谢谢。现在我就这么做了。我已经在不同的文件中分开了我的路线,为了保持上面的顺序,我不得不处理几个路线文件。这就是为什么我试图找到一个正则表达式来排除路由中的一些单词,作为解决此类问题的更通用方法。您可以向变量添加正则表达式,如app.post('/:username(jon | jack)/:slug',中间件)
但我不确定什么是受支持的,什么是不受支持的,因为除了有效值的枚举列表之外,我没有对它进行任何测试,我认为它没有文档化请参阅相关问题请参阅相关问题