jQuery Ajax请求成功后,为什么一直在error函数里

问题:

使用jquery.ajax请求,发现服务端返回是ok的,ajax确调用了error方法。

服务端返回“200”,说明请求是成功的;“responseText”也是对的。

解决:

把ajax参数“dataType”和服务端返回的数据类型改为一致就可以了。

常见问题场景:

  • 跨域
  • $.ajax 没设置 dataType,及服务器端没设置respon.ContentType
  • json 结构错误

拓展:

返回的数据类型一定要符合定义的数据类型。如果你定义的 dataType 是 json 类型的,那么返回来的数据一定是 json 才可以,不然就会执行 error 里的程序块。
所以少配dataType属性即没有配dataType:'json'(返回的数据类型是json类型),就会导致出现了此问题。

标签

发表评论

电子邮件地址不会被公开。 必填项已用*标注