私が持っているルート:ExpressJSルート正規表現
/^[a-z]{0,10}$/
:
app.get('/:id', routes.action);
それは正常に動作しますが、私はrobot.txt
や他のスキップ必要があります(人間を....) 私は正規表現(のみ文字または数字)を作成
この正規表現に一致する唯一のIDだけをルーティングする方法はありますか?
私が持っているルート:ExpressJSルート正規表現
/^[a-z]{0,10}$/
:
app.get('/:id', routes.action);
それは正常に動作しますが、私はrobot.txt
や他のスキップ必要があります(人間を....) 私は正規表現(のみ文字または数字)を作成
この正規表現に一致する唯一のIDだけをルーティングする方法はありますか?
物理的に存在する静的ファイルと一致する経路を避けたい場合は、app.router
の呼び出しの前にstatic
ミドルウェアを配置するだけです。
静的ファイル(robots.txtなど)が配信され、これらの呼び出しがルーティングに届きません。
問題解決済み;-)
このような括弧で正規表現を入れて:
app.get('/:id(^[a-z]{0,10}$)', routes.action);
あなたが複数のルートのためにそれが必要な場合:
app.routes.get
は、getルートのすべてを有するアレイです。 変更が必要なルートの正規表現オブジェクトを変更することができます。