0
我有以下兩種途徑:快遞航線解析命中路線不應該
router.get('/:postId([0-9]*)', handler)
router.get('/:postId([0-9]*)/like', handler)
第一條路線應該只捕獲的URL像/posts/4352/
,但不/posts/3422/like
。但它確實如此。我已經在official route tester中嘗試過快遞,它在那裏按預期工作。 (嘗試粘貼/posts/:postId([0-9]*)
和/posts/2/like
,您會看到它不匹配。)
在我的情況下會導致這種錯誤匹配?
注:我知道如果我改變順序比它會工作,但我很好奇爲什麼會發生這種情況。
正如我所說的,我知道它會解決它。我想知道_why_而不是_how_。 – NoNameProvided
正如我可能嚴格措辭這樣的作品,像一個案例聲明,它會匹配並停止在第一次正確的比賽。所以[0-9] *實際上是一個單一的數字,然後任何正則表達式相比,([0-9] *)是任何數量的數量。 –