首页 > 解决方案 > 如果值包含“#”,则 Spring REST @RequestMapping 提取不正确

问题描述

请参阅以下 Spring REST 示例,如果请求如“<a href="http://localhost:8080/site/name/exemple#name" rel="nofollow noreferrer">http://localhost:8080/site/ name/exemple#name”提交,Spring返回“exemple”并提取一半并删除#后面的文本。

@Controller
@RequestMapping("/site")
public class SiteController {
@RequestMapping(value = "/name/{myname}", method = RequestMethod.GET)
//myname='exemple'
    ...
    }

如何解决?

标签: javaspring

解决方案


“#”是 URL 中的保留字符。它必须逃脱。它表示 URL 片段部分的开始。因此,名称是“示例”,片段是“名称”。


推荐阅读