gpt4 book ai didi

jquery - 处理 jquery ajax 重定向

转载 作者:行者123 更新时间:2023-12-03 22:40:21 24 4
gpt4 key购买 nike

我正在创建一个 $.get 来调用服务“A”。服务“A”返回我在页面上显示的纯文本。但有时它会重定向到返回纯文本的服务“B”。但是,我无法处理服务“B”的响应文本。我该怎么做?

最佳答案

我无法证明,但我希望这个脚本可以指导您找到解决方案:

您必须证明您的状态差异或来自“a.php”的每种类型的响应的文本

$.ajax({
type: "GET",
url: "a.php",
complete: function (XMLHttpRequest, textStatus) {
if (XMLHttpRequest.status!=200) // or responseText
{
var fn = arguments.callee;
var _this = this;
setTimeout(function(){fn.call(_this, XMLHttpRequest, textStatus);}, 200);
}
else
{
//ok
}
}
});

或编辑:

  complete: function xCompleteFunction(XMLHttpRequest, textStatus) {
if (XMLHttpRequest.status!=200) // or responseText
{
var _this = this;
setTimeout(function(){xCompleteFunction.call(_this, XMLHttpRequest, textStatus);}, 200);
}
else
{
//ok
}
}

function call to itself

编辑二:

重定向.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<title></title>
<script type="text/javascript">
$(function(){
$("#senddata").click(function(){
$.ajax({
type: "GET",
url: "a.php",
complete: function xCompleteFunction(XMLHttpRequest, textStatus) {
$("#info").append(""+XMLHttpRequest.status+"<br />"+XMLHttpRequest.responseText+"<br>");
if (XMLHttpRequest.status==301) // or responseText
{
var _this = this;
setTimeout(function(){xCompleteFunction.call(_this, XMLHttpRequest, textStatus);}, 200);
$("#info").append("waiting redirect<br>");
}
else
{
$("#info").append("redirect ok<br>");
}
}
});
});
});
</script>
</head>
<body>
<button id="senddata">send ajax request</button>
<pre id="info"></pre>
</body>
</html>

a.php:

<?php
for($a=0;$a<1000000;$a++)
{
//wait
}
header('Location: b.php');

b.php:

<?php
print "hola mundo";

重要: Status Code Definitions

关于jquery - 处理 jquery ajax 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1804928/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com