显示jQuery$.ajax503错误响应
我试图显示一个文件的响应,该文件的响应为503错误显示jQuery$.ajax503错误响应,jquery,ajax,Jquery,Ajax,我试图显示一个文件的响应,该文件的响应为503错误 function netbootupdate() { $("#netbootstatus").html('Updating..'); $.ajax({ type: 'GET', url: 'clientarea.php', data: 'action=productdetails&id=' + $('#serverid').val() + '&modop=custom&a=netboot
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');
}
});
}
由于某些原因,数据没有给出回复的内容。AFAIK,在某些浏览器中,当状态不是2xx、3xx时,XHR拒绝传递数据。如果您确实需要503响应的数据,请尝试重写服务器端的HTTP状态代码 在
complete(data,textStatus,XMLHttpRequest)
回调中,您可以检查textStatus
中的字符串error
以检测503。(哦,我刚刚意识到你已经知道了)
参考:
编辑:使用complete()
而不是success()
捕获所有结果
$.ajax({
// ...
// [other arguments]
// ...
error: function(xmlReq, txtStatus, errThrown){
$('#status').text(xmlReq.responseText).addClass('errorBox');
}
});
我想这就是你想要的,尽管不确定。无论哪种方式,
xmlReq
(如我所命名)都与之关联,您可以访问和引用。我不知道这是否有帮助,但我有一个web服务,当数据库不可用时,我会强制它抛出503错误。它正确地返回HTTP503响应代码,但在我的客户端脚本中,返回的AJAX响应代码是500(服务器错误)。您可能希望有一个通用的5**响应代码处理程序,而不是一个特定的503,这样您就可以捕获所有与服务器相关的问题。这就是我最后要做的。你为什么要把数据
放在引号里?这是一个变量名。另外,对于参数,“data”实际上应该是XMLHttpRequest,textStatus,errorshown
,这样您就可以获得有关返回错误的更多详细信息。啊,对不起。。。是的,数据在我的代码中没有引号,只是在一秒钟前将其设置为静态,以确保其输出在正确的位置。XMLHttpRequest和ErrorSwink为空。textStatus以错误响应。但是我想让它显示HTML响应。你确定它们是空的吗?前者应该是一个带有Ah的对象,如何获得要打印的responseText?XMLHttpRequest.status
(假设这是参数的名称)——请