ZPY博客

Vue传json数组到SpringBoot接收报错com.alibaba.fastjson.JSONException: not close json text, token : ,

今天前端说排序有问题,现象很奇怪,说是第一次操作没问题,第二次就会报错。我一看后台,第一次没报错,第二次报错com.alibaba.fastjson.JSONException: not close json text, token : ,

查了下,这个错是Json解析出错,但是没理由第一次解析可以,第二次解析就不行了啊,在前端那边debug看了很久,发现不管是第一次还是第二次,打印出来的需要传给我的json数据都是对的,这就很无语了。后来在后台打断点,把两次接收到的参数复制到文本编辑器,发现第二次的数组比第一次的数组长了一倍!!!原来第二次传过来的数据包含了第一次的数据。。。

由于前端是用formdata传值的,每次都是往formdata里push josn数组,那么明显就是每次formdata没有清空,用的是同一个formdata,所以第二次请求时包含了第一次的数据。

解决方法:前端每次请求完后清空formdata即可。