今天在和后端联调一个接口的时候,一个是要提交7个字段
如果全部提交的时候,response返回结果是 HTTP Status 400 The request sent by the client was syntactically incorrect
只提交其中必填的三个时候,是可以正确提交的,把字段和后端确认了下,字段都没问题。
解决思路:
首先可以确认前端ajax是没有问题的,请求是走到后端了,那么就是后端在处理的时候造成。
google了一下,原来是java spring mvc的处理造成的
简单点说:就是前后端字段的类型是不一样造成的
我这里是提交的时间是字符串,后端接收的是数字。
改成一样就ok了。
Reference:
http://my.oschina.net/building/blog/137824
前台form表单中的某些参数 和 后台接受的参数类型不一致导致的。即参数名称相同,但是类型不一致。spring mvc在绑定参数的时候出现异常,所以返回400错误。但是坑爹的地方在于,这个异常会被spring mvc吃掉,不会显示在控制台中。
解决办法:检查form表单中的参数和后台的参数对应,看是否有参数名相同但是类型不一致的情况。或者把当前日志设为debug 级别,然后在日志中即可看到spring 抛出的异常信息,即可发现哪个参数出现了错误。