當使用path-to-regexp時,如何匹配所有不以/api/
開頭的路徑?如何使用path-to-regexp匹配所有不以/ api /開頭的路徑?
通過使用原生JavaScript RegExp /^(?!\/api\/).*/
將匹配/x/y/z
。請參閱here的測試結果
但是,它不適用於path-to-regexp。看到there
那麼什麼是實現路徑對正則表達式我的目標的正確方法的測試結果?
[更新1]
更多細節: 真正的情況是,我使用angular2 + koajs。而在angular2中,瀏覽器可能會向服務器發出客戶端路由URL。請參閱我的another question關於此。
爲了解決這個問題,通過@mxii的建議,我試圖用koa-repath重定向,並非始於/api/
到根網址的所有請求:http://localhost:3000/
excepte它的靜態資產(JS/JSON/HTML/PNG/...) 要求。
和koa-repath
使用path-to-regexp
來匹配路徑。這就是我問這個問題的原因。
快速路由測試器不是一個正則表達式測試器......你輸入一個類似'/ api/user /:name /:age /'的路由,然後像'/ api/user/john-doe/21'這樣的路徑給你鑰匙('1。名字和'2。路線')和結果('名字:john-doe'和'年齡:21')...「正則表達式」模塊將正則表達式排除在路由之外,因此您可以通過正則表達式檢查路徑字符串是否匹配它。我沒有得到你想要達到的目標,請你澄清一下。 –
謝謝西蒙,請參閱我的更新瞭解更多詳情 – ricky