[英]tuckey urlrewrite returns 404 not found
我正在使用Jersey框架,端點是/v1/users/{user_id: \\p{XDigit}{8}}/orders/{order_id: \\p{XDigit}{8}}
。
我需要將URL /v2/users/{user_id: \\p{XDigit}{8}}/orders/{order_id: \\p{XDigit}{8}}
為上述URL。
我正在使用tuckey進行URL重寫。 以下是我的urlrewrite.xml。
<rule>
<from>^/v2/users/([A-Fa-f0-9]{8})$/orders/([A-Fa-f0-9]{8})$</from>
<to>/v1/users/$1/orders/$2</to>
</rule>
通過發送請求curl 'localhost:8080/v1/users/11111111/orders/11111111'
,我到達了正確的端點,但是當我嘗試curl 'localhost:8080/v2/users/11111111/orders/11111111'
,我得到404 NOT FOUND的響應。
當我將urlrewrite.xml更改為以下內容時
<rule>
<from>^/v2/users/([A-Fa-f0-9]{8})/orders/([A-Fa-f0-9]{8})</from>
<to>/v1/users/([A-Fa-f0-9]{8})/orders/([A-Fa-f0-9]{8})</to>
</rule>
我收到錯誤消息,說You did not supply enough values to fill path parameters
。
知道我為什么錯嗎?
請嘗試以下操作:
<rule>
<from>^/v2/users/([A-Fa-f0-9]{8})/orders/([A-Fa-f0-9]{8})$</from>
<to>/v1/users/$1/orders/$2</to>
</rule>
請注意,您已經使用了一個額外的“ $”。 在RegEx中,“ $”表示“句子結尾”。
祝好運。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.