ajax post传一个json一个string字符串的方式:


第一种:传两个string:
1.把json转成字符串JSON.stringify(resjson)
2.不要指定header为application/json 不写默认是application/x-www-form-urlencoded
3.后台用两个String加@RequestParam注解接收 然后再把json转换为map
代码:


/////////////AJAX
$.ajax(app.GlobalIP + '/show/addData', {
data: {
parameter: JSON.stringify(resjson),    //json to string
tablename: detailglobaltn    //字符串
},
dataType: 'json', //服务器返回json格式数据
type: 'post', //HTTP请求类型
timeout: 10000, //超时时间设置为10秒;
// headers: { 'Content-Type': 'application/json' }, //写上后后台需要添加RequestBody 接收到的为一整个对象
success: function (data) {
console.log(JSON.stringify(data));
},
error: function (xhr, type, errorThrown) {
//异常处理;
console.log('ERROR********************' + type);
}
});
/////////////后台Controller public CommonResult addData(@RequestParam(
"parameter") String parameter, @RequestParam("tablename") String tablename){ //Map map = JSON.parseObject(parameter); Map<String,String> map = JSONObject.parseObject(parameter,new TypeReference<Map<String, String>>(){}); String s = map.get("ETIEM"); System.out.println(map); System.out.println(tablename); //...... return new CommonResult(200,"成功"); }

 

第二种:直接传对象套对象
1.resjson直接为js的json对象
2.加上headers
3.后台用一个Map加@RequestBody注解接收 类型为Map<Map<String,Object>>
代码:

////////////AJAX
$.ajax(app.GlobalIP + '/show/addData', { data: { parameter: resjson, //json tablename: detailglobaltn //字符串 }, dataType: 'json', //服务器返回json格式数据 type: 'post', //HTTP请求类型 timeout: 10000, //超时时间设置为10秒; headers: { 'Content-Type': 'application/json' }, //写上后后台需要添加RequestBody 接收到的为一整个对象 success: function (data) { console.log(JSON.stringify(data)); }, error: function (xhr, type, errorThrown) { //异常处理; console.log('ERROR********************' + type); } });
////////////后台Controller public CommonResult addData(@RequestBody Map map){ Object o
= map.get("parameter"); Map parameter = JSON.parseObject(JSON.toJSONString(o)); //Map<String,String> map = JSON.parseObject(parameter,new TypeReference<Map<String, String>>(){}); String tablename = map.get("tablename").toString(); //...... return new CommonResult(200,"成功"); }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM