【问题标题】:Spring REST @RequestMapping extract incorrectly if value contains ‘#’ [duplicate]如果值包含“#”,则 Spring REST @RequestMapping 提取不正确 [重复]
【发布时间】:2018-11-03 18:44:36
【问题描述】:

参见下面的 Spring REST 示例,如果提交了诸如“http://localhost:8080/site/name/exemple#name”之类的请求,则 Spring 返回“example”并提取一半并删除 # 后面的文本。

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

如何解决?

【问题讨论】:

  • 这是理想的行为。你想用#name做什么??
  • @MạnhQuyếtNguyễn "exemple#name" 是我想在我的数据库中搜索并打印的产品名称的示例。示例:localhost:4200/site?name=exemple%23name

标签: java spring


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-01-30
    • 2014-07-28
    • 2018-07-11
    • 1970-01-01
    • 2020-02-06
    • 2013-07-21
    • 1970-01-01
    • 2019-02-28
    相关资源
    最近更新 更多