微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax datatype json 错误

在前端开发过程中,使用ajax请求数据是一项经常使用的技术。而ajax中的datatype常常被用来指定数据类型,其中json是一种常用的数据类型。但是在实际开发中,我们经常会遇到ajax请求中datatype json的错误问题。

$.ajax({
  url: 'xxx',type: 'get',dataType: 'json',success: function(data) {
    console.log(data);
  },error: function (xhr,textStatus,error) {
    console.log(xhr.responseText);
  }
});

ajax datatype json 错误

这里我们可以看到,在ajax请求中,我们定义了请求的url、请求类型、数据类型等参数。如果服务端返回的数据格式符合json的格式要求,那么ajax请求成功后,会调用success回调函数,返回数据。但是如果返回的数据不符合json格式的规范,则会走error回调函数,返回错误信息。

一些常见的错误信息包括

  • Unexpected token xxx in JSON at position xxx:
    {
      code: 200,message: "success"
    }
  

上述数据格式是符合json规范的,但如果服务端返回的数据格式如下:

    {
      code: 200,message: "success",}
  

最后一个属性后的逗号会导致json格式错误,这时候就需要服务端进行修正。

  • Invalid JSON:
  • 如果服务端返回的数据不是一个合法的json格式,例如返回一段HTML代码,则会造成Invalid JSON的错误

  • Response is not JSON:
  • 如果服务端返回的Content-Type不是application/json,则会导致Response is not JSON的错误

    总的来说,以上错误的处理方法主要有两种,一种是服务端检查返回的数据格式是否合法;另一种是客户端在error回调函数中进行错误提示,同时也需要检查相关的数据格式。

    版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

    相关推荐