knrt.net
当前位置:首页 >> jquEry AjAx 向后台传 json 数组 出现 400 或 415 ... >>

jquEry AjAx 向后台传 json 数组 出现 400 或 415 ...

400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。 415 介质类型不受支持 — 服务器拒绝服务请求,因为不支持请求实体的格式。 检查 data 吧,看看提交到后台的数据是否合法!

1、检查你提交的内容,是不是json格式的字符,不管前台是传递json 字符串 还是 json对象过去,springMVC 的requestBody都可以给你进行对象的属性值转换,我最后发现这个原因是因为传递的那个dto 对象中,有两个一样的名称属性,只是大小写不一样...

php函数 $json_array = json_decode($json, true);

将对象或数组转成字符串JSON.stringify(jsonobj); 有特殊字符可以编码,到后台开发人员再转解码

最好是使用第一种,然后后台用2个属性接收,或者用对象接收都可以。 第二种一般是后台用字符串接收,比如前端传值是data:str='{"uname":"tom","pwd":123}' 那么后端就用str的String类型接收就可以了! 另外推荐一个JSON工具给您。 JSON在线解析...

返回的result是局部变量,只能在success中取到。默认的是异步请求,异步请求只能在ajax方法内部取到.可以设置async :false

var result = JSON.parse(msg); for (var i = 0 ; i < result.length ; i++) { alert(result[i].LogID + " " + result[i].LogTitle) } 或者$.ajax的参数有一个属性是dataType,指定为json之后,回调函数的参数就是一个JSON.parse之后的对象

{ "totalCount":2, "mylabels":[ {"id":"01wdsf01",name:"校园",level:"1"}, {"id":"01wdsf02",name:"娱乐",level:"2"} ] } 存为 data.js $.getJSON("data.js", function(json){ alert("JSON Data: " + json.mylabels[0].id); });

不需要处理的,直接用request.getParameter('name');通过参数名获取参数值就可以了

所谓JSON格式,并不是直接传递的JSON对象,直接当字符串接受就可以,接受后,因为是指定的格式,那么就可以用一些第三方的有关JSON对象的jar包中的类,然后相对好解析。

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com