javascript - Jquery/JSON 处理 XHR 响应

标签 javascript jquery json xmlhttprequest

我正在使用下面的代码发布一些 JSON 信息。目前,如果成功(200 响应)弹出警报,但如果不成功则什么也不会发生。

我想做的基本上是说如果成功就做 X,否则就做 Y。

我尝试在函数中使用 if/else 语句,但它似乎不起作用。

如果这是一个愚蠢的问题,我深表歉意,我是使用 JSON、XHR 等的新手。非常感谢任何帮助。

jQuery["postJSON"] = function(url, data, callback) {
  if (jQuery.isFunction(data)) {
    callback = data;
    data = undefined;
  }
  return jQuery.ajax({
    url: url,
    type: "POST",
    crossDomain: true,
    contentType: "application/json",
    data: JSON.stringify(data),
    success: callback
  });
};

$.postJSON(
  "https://test.com",
  data,
  function(data, status, xhr) {
    alert("Success");
  }
);

编辑:工作代码:

jQuery["postJSON"] = function(url, data, callback) {
  if (jQuery.isFunction(data)) {
    callback = data;
    data = undefined;
  }
  return jQuery.ajax({
    url: url,
    type: "POST",
    crossDomain: true,
    contentType: "application/json",
    data: JSON.stringify(data),
    success: callback,
    error: function(xhr, ajaxOptions, thrownError){
    alert(thrownError);
  });
};

$.postJSON(
  "https://test.com",
  data,
  function(data, status, xhr) {
    alert("Success");
  }
);

最佳答案

将此行添加到您的 return jQuery.ajax({}) 函数中:

        error: function(xhr, ajaxOptions, thrownError){
        window.alert(thrownError);
    }

希望对你有帮助~

关于javascript - Jquery/JSON 处理 XHR 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53511563/

相关文章:

javascript - 如何访问 axios 请求之外的值?

javascript - React/Rails AJAX POST 请求返回 404

jquery - 使用带有 302 重定向的 jquery 进行 ajax 请求后,Firefox 中不会调用任何回调

json - JSON规范和BOM/字符集编码的用法

json - 在 Go 中将字符串转换为 json

javascript - 多人/访客与 Ruby on Rails 的交互?

javascript - meteor js 铁路由器 : apply CSS change whenever route changes

javascript - 在 JavaScript 中用来描述一个完整的调用框架循环的术语是什么?

javascript - AngularJS - 在第一个可见元素上应用 CSS 类(最好不要使用 JQuery)

javascript - 使用多个用户凭据的 Json 登录