2012-06-04 72 views
1

在搜索引擎的@ControllerSpring MVC中的@PathVariable中的問號?

@RequestMapping(value = "/search/{query}", method = RequestMethod.GET) 
public String search(@PathVariable String query) {} 

如果用戶想要搜索/search/w?rld(至極應該與世界,warld,whrld等),可變query等於w,因爲問號的這表示一個GET變種。我試過"/search/{query:.+}",但仍然不起作用。

任何想法如何解決這個問題?

回答

5

該問題不在Spring配置中。它在URL中。問號是表示查詢String開始的符號。如果是URL的一部分,它必須被編碼:

/search/w%3Frld 
+0

謝謝,但我希望用戶能夠直接在他的瀏覽器中的URL中寫入他的查詢,而無需他自己手動轉義問號。 – sp00m

+0

然後學會他逃避問號,因爲它無法繞過它。 –

相關問題