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

javascript – jquery ajax自定义错误处理程序

我正在JSON服务器上编写一个骨干js Web应用程序,它在JSend specification format中返回JSON响应.

以下是该格式的一些示例:

GET /帖子

{
 "status": "success",
 "data": {
   "posts" [
     {"id": 1, "title": "A blog post"}, 
     {"id": 2, "title": "another blog post"}
   ]
 }
}

发布/发布

{
  "status": "fail",
  "data": {
    "title": "required"
  }
}

认情况下,$.ajax中的“error”事件由http代码触发,但由于JSend规范格式根本不使用HTTP代码,因此我必须重写$.ajax错误处理程序.

认情况下它的工作方式(http代码):

$.ajax({
  error: function() {
    // Do your job here.
  },
  success: function() {
    // Do your job here.
  }
});

如何重写解析主体时触发的$.ajax错误处理程序以及“status”属性是“失败”还是“错误”?

解决方法:

尽管看似违反直觉,但您必须将其置于成功功能中.只需自己查看价值:

$.ajax({
  error: function() {
    // Handle http codes here
  },
  success: function(data) {

    if(data.status == "fail"){
      // Handle failure here
    } else {
      // success, do your thing
    }

  }
});

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

相关推荐