Jquer Ajax xmlhttp请求成功了,为什么一直在error函数里面

今天遇到了一个极其奇怪的问题,用各种工具检查都能看到服务器端返回了200,数据也是正常的,但是$.ajax 始终进不到success,郁闷啊,在网上找,

常见问题场景: 1.跨域;

                     2. $.ajax 没设置 dataType,及服务器端没设置respon.ContentType

                     3. Json结构错误;

第一第二很快就排除了,到了第三重新度了Json的定义 ,http://www.json.org/json-zh.html

重新复习了下Json的定义, 键值对: 键为string

                                                值为 

值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。


原来定义的类型是

{isSuccess:true,message:'good'}

按照键的定义应该修改为

{'isSuccess':true,'message':'good'}

继续执行还不行,按照值的定义修改:

{'isSuccess':true,'message':"good"}

彻底郁闷了,这还不行
后面放下这里仔细看了对Json键值的规范,值要定义为带双引号的字符串,为什么是双引号,那么键呢,是不是需要?

换成

{"isSuccess":true,"message":"good"}

直接通了。

Json的格式跟Javascript里面对象的区别就在这里,Json要求键,值必须是双引号!!

原文地址:https://www.cnblogs.com/toSeeMyDream/p/4811276.html