遇到这个问题的时候也找了好多网络资源,网上大多说的是传数组有两种方式:一是拼接字符串;二是请求是使用传统模式traditional:true;ajax
引自(https://blog.csdn.net/CrazyLai1996/article/details/76165971)(https://blog.csdn.net/u011734144/article/details/53836906/)json
大多数是采用第二种方式的答案,可是对于个人请求采用此方法没有解决。数组
最后经过415报错找到contentType:application/x-www-form-urlencoded不容许;服务器
最后经过查找资料了解到:网络
contentType 主要设置你发送给服务器的格式,dataType设置你收到服务器数据的格式。app
##而contentType默认格式就是application/x-www-form-urlencoded;url
这种格式的特色就是,name/value 成为一组,每组之间用 & 联接,而 name与value 则是使用 = 链接。这种传递只能是简单的键值对格式传递,也就是简单的不带嵌套的json格式;可是复杂状况下,要传一个复杂的json格式数组嵌套对象,对象中包含数组或者对象嵌套数组,数组中包含对象等,application/x-www-form-urlencoded是没有办法将复杂的json组织成键值对形式的。{ a: 1, b: 2, c: 3 }spa
##contentType:application/json;这种类型是text,咱们ajax的复杂json数据用 JSON.stringify序列化后,而后发送,在服务器端接到而后用 JSON.parse 进行还原就好了,这样就能处理复杂的对象了。.net
{ data: { a: [{ x: 2 }] } }code