【问题标题】:Display jQuery $.ajax 503 error response显示 jQuery $.ajax 503 错误响应
【发布时间】:2012-09-19 01:06:08
【问题描述】:

我正在尝试显示响应为 503 错误的文件的响应。

function netbootupdate() {


$("#netbootstatus").html('Updating..'); 
  $.ajax({
    type: 'GET',
    url: 'clientarea.php',
    data: 'action=productdetails&id=' + $('#serverid').val() + '&modop=custom&a=netbootset&netbootid=' + $('#netbootid').val() + '&root=' + $('#root').val(),
    timeout: 5000,
    success: function(data) {
      $("#netbootstatus").html(data);
      $("#status").html(''); 
    },
    error: function(data) {
      $("#status").html(data);
      $('#status').addClass('errorbox');
    }
    });
}

由于某种原因,数据没有给我回复的内容。

【问题讨论】:

  • 你为什么把data放在引号里?这是一个变量名。此外,事实上,“数据”应该是XMLHttpRequest, textStatus, errorThrown 作为参数,以便您可以获得有关返回的错误的更多详细信息。
  • 啊抱歉...是的,我的代码中的数据不在引号中,只需在一秒钟前将其设置为静态,以确保它在正确的位置输出。 XMLHttpRequest 和 errorThrown 为空。 textStatus 以错误响应。但我想让它显示 HTML 响应。
  • 你确定它们是空的吗?前者应该是properties that are accessible的对象
  • 啊,我要如何打印 responseText?
  • XMLHttpRequest.status(假设这是参数的名称)——请See my answer

标签: jquery ajax


【解决方案1】:
$.ajax({
   // ...
   // [other arguments]
   // ...
   error: function(xmlReq, txtStatus, errThrown){
     $('#status').text(xmlReq.responseText).addClass('errorBox');
   }
});

我认为这就是你想要的,虽然不确定。无论哪种方式,xmlReq(我已将其命名)都有与之关联的 several properties,您可以访问和引用。

【讨论】:

    【解决方案2】:

    AFAIK,在某些浏览器中,当状态不是 2xx、3xx 时,XHR 拒绝传递数据。如果确实需要 503 响应的数据,请尝试在服务器端重写 HTTP 状态码。

    complete(data, textStatus, XMLHttpRequest) 回调中,您可以检查textStatus 中的字符串error 以检测503。(哦,我刚刚意识到您已经知道了)

    参考:http://api.jquery.com/jQuery.ajax/

    编辑:使用complete() 而不是success() 来捕获所有结果。

    【讨论】:

      【解决方案3】:

      我不知道这是否有帮助,但我有一个 Web 服务,当数据库不可用时我强制它抛出 503 错误。它正确返回 HTTP 503 响应代码,但在我的客户端脚本中,返回的 AJAX 响应代码是 500(服务器错误)。您可能希望拥有一个通用的 5** 响应代码处理程序,而不是特定的 503,这样您就可以捕获所有与服务器相关的问题。这就是我最终要做的。

      【讨论】:

        猜你喜欢
        • 2013-11-17
        • 1970-01-01
        • 1970-01-01
        • 2015-07-23
        • 2013-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-08-26
        相关资源
        最近更新 更多