84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
@RequestMapping("/test") @ResponseBody public String test(Long id){ return id + ""; }
当请求传入参数不是数字的时候会返回400 Bad Request如何校验传入的这个参数?
400 Bad Request
走同样的路,发现不同的人生
你的问题是“现状是,传入参数不是数字是就会返回400 Bad Request而你不知道为什么?”
还是,“你希望让传入参数不是数字时,自动返回400 Bad Request”
补充:
那是不是可以这样改改,如果你用的是spring4的话:
spring4
@RequestMapping("/test") @ResponseBody public String test(@RequestParam("id") Long id, BindingResult result){ if (result.hasErrors()) { return "返回你想返回的"; } return id + ""; }
好久没写了,应该ok吧
好像显示指定@Valid之类的注解的,你得仔细查查spring的文档,我实在不确定annotation是不是我写的这个@RequestParam(取决于你的参数是从url里还是其他什么地方来)
@Valid
spring
annotation
@RequestParam
那么纠结的话你就直接接收Object id 然后第一行代码判断id instanceof Long 开个玩笑。。如果传进来的不是数字的话,应该是不会走到你的方法上的吧。
Object id
id instanceof Long
你的问题是“现状是,传入参数不是数字是就会返回
400 Bad Request
而你不知道为什么?”还是,“你希望让传入参数不是数字时,自动返回
400 Bad Request
”补充:
那是不是可以这样改改,如果你用的是
spring4
的话:补充:
好像显示指定
@Valid
之类的注解的,你得仔细查查spring
的文档,我实在不确定annotation
是不是我写的这个@RequestParam
(取决于你的参数是从url里还是其他什么地方来)那么纠结的话你就直接接收
Object id
然后第一行代码判断id instanceof Long
开个玩笑。。如果传进来的不是数字的话,应该是不会走到你的方法上的吧。