作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 Controller :
@RestController
public class MyController {
@GetMapping(value = "/products/{value}")
public String get(@PathVariable String value) {
System.out.println(value);
return "OK";
}
}
启动服务器后,我尝试发送如下消息:
http://localhost:8080/products/Mazda
我在控制台中看到马自达。但是当我发送带有反斜杠的值时:
http://localhost:8080/products/Mazda\6
我收到错误:
This application has no explicit mapping for /error, so you are seeing this as a fallback.
如何将带有“\”符号的值作为 get 参数传递给我的 Controller ?
我期望:马自达\6
最佳答案
首先,您需要在客户端对路径变量进行编码。以下是 Java 的示例:
URLEncoder.encode("Mazda\\6", "UTF-8");
结果将是 Mazda%5C6
。第二步是allow the processing of requests URL 中包含特殊字符。
第三,解码 Controller 中的字符串:
String decodedValue = URLDecoder.decode(value, "UTF-8");
关于java - 如何将带有 '/' 符号的值作为获取参数传递给我的 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56890427/
我是一名优秀的程序员,十分优秀!