SpringMVC采用Get方式请求资源时,如果请求路径的结尾中带有小数点(.)时,同时使用@PathVariable访问路径内容时,请求路径中最后一个小数点及其后面的内容会被Spring截断丢弃
比如针对请求格式如下的访问:@GetMapping("/urlDetail/{url}")
http://localhost/eapi/urlDetail/huobijijin.ahdtrsj.gov.cn
@GetMapping("/urlDetail/{url}")
public Document getDetail(@PathVariable String url){
//业务代码
XXXXX
}
请求到代码中接收到的入参url值为003003huobijijin.ahdtrsj.gov
处理方法:
(1).请求路径添加后缀处理:@GetMapping("/urlDetail/{url}.cn")
(2).在实际请求路径后面全部手动添加.cn之类后缀
(3).正则表达式处理路径:@GetMapping("/urlDetail/{url:.+}")
三种处理方法入参到代码中都能接收到正确的url地址。