2012-06-04 40 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

然后学会他逃避问号,因为它无法绕过它。 –

相关问题