ajax提交JSON数据,报类型转换错误
1.错误描述:
前端ajax post方式提交JSON数据,data: {属性1: 数据1, 属性2: 数据2},spring mvc使用@RequestBody进行接收,首先出现不支持application/x-www-form-urlencoded的错误,修改提交的contentType属性application/json,报错类型转换错误信息:属性1=数据1&属性2=数据2
2.原因分析
@RequestBody接收的是JSON数据(JSON字符串或直接JSON对象), ajax data属性被直接拼接成FormData格式的数据(属性1=数据1&属性2=数据2)
3.解决方案
前端提交时首先格式化`
$.ajax({
data: JSON.stringify(data),
//...
});
转换为字符串数据