我的路線:ExpressJS路徑正則表達式
app.get('/:id', routes.action);
它工作正常,但我需要跳過robot.txt
等(人類....) 我創建的正則表達式(只有字符或數字):
/^[a-z]{0,10}$/
我如何才能路由與此正則表達式匹配的唯一標識符?
我的路線:ExpressJS路徑正則表達式
app.get('/:id', routes.action);
它工作正常,但我需要跳過robot.txt
等(人類....) 我創建的正則表達式(只有字符或數字):
/^[a-z]{0,10}$/
我如何才能路由與此正則表達式匹配的唯一標識符?
如果您希望避免與實際存在的靜態文件相匹配的路由,只需在調用app.router
之前放置static
中間件即可。
然後,將傳遞靜態文件(如robots.txt),這些調用將不會通過您的路由。
問題解決;-)。
把正則表達式中括號是這樣的:
app.get('/:id(^[a-z]{0,10}$)', routes.action);
如果你需要它的多條路線:
app.routes.get
是具有所有的get路線的數組。 您可以更改需要更改的路線的正則表達式對象。