首頁  >  文章  >  Java  >  如何在 Spring MVC 中防止 @PathVariable 截斷?

如何在 Spring MVC 中防止 @PathVariable 截斷?

Linda Hamilton
Linda Hamilton原創
2024-10-29 20:42:30306瀏覽

How to Prevent @PathVariable Truncation in Spring MVC?

解決Spring MVC 中的@PathVariable 截斷

問題:
當Spring MVC 控制器使用自訂路徑變數定義@PathVariable時參數,包含特殊字元的路徑段將會被截斷。

範例:

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName}")

傳遞帶有路徑變數 blah2010.08.19-02:25:47 的 URI 會導致 blahName 參數被截斷為 blah2010.08。

解:
要防止截斷,請在@RequestMapping 參數中使用正規表示式:

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName:.+}")

的. = 正規表示式允許在前導點後使用任意數量的字元(包括特殊字元),從而有效地將整個路徑段捕獲為路徑變數值。 request.getRequestURI() 將傳回完整的 URI,包括完整的 blahName。

以上是如何在 Spring MVC 中防止 @PathVariable 截斷?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn