在Ajax GET之后重定向
Redirect after Ajax GET
我试图让我的服务器重定向我的应用程序后,我做一个未经认证的GET请求使用ajax。但是,当我获得重定向(服务器发送带有/login.html的303的位置)时,我在firebug控制台查看响应选项卡时,在我的响应中获得了login.html的完整HTML(也许这是正常的,我不确定)。然后在firebug中查看这个,我看到它正在尝试进行重定向,但控制台只是在该操作上旋转(从未完成处理)。我试着在网上找到一些相关的信息,但没有成功,我发现最近的是:在这里。
下面是我如何在JavaScript中处理这个问题:
function doSomethingAwesome()
{
try
{
ajaxObject.open("GET", serverLocation+ '?action=getSomeInfo', true);
ajaxObject.send();
}
catch(err){}
}
ajaxObject.onreadystatechange = function()
{
if(ajaxObject.status == 200 && ajaxUsers.readyState == 4)
{
do some stuff
}
}
我的响应头有以下信息:303见其他连接:维生日期地点:/login.html服务器nginx/1.2.7传输编码:分块所以onreadystatechange函数不应该真正影响重定向(从我的理解),但我想我会把它扔在那里。真的所有应该发生在这里是我说话的服务器加载一些信息,它看到我没有登录(无论是GET或POST),我应该收到重定向到登录页面(这不会发生)。抱歉,如果这听起来像漫谈,我感谢任何建议或帮助任何人可能能够提供。
这里的问题是您只重定向了ajax请求,而不是导航到新url。您必须通过更改onreadystatechange
函数中的window.location.href
来执行重定向。
相关文章:
- 试图在表单post之后使用jQuery.post()重定向用户
- 如何在 Javascript 警报/会议框之后将用户重定向到新网页
- jquery阻止重定向,直到动画之后
- js警报之后的页面重定向-include和header的替代选项
- 在jquery$.post之后的Rails重定向到
- 在nodejs中的res.end()之后重定向
- 在windows .location.reload(true)之后,URL重定向在IE11中没有发生
- Ajax之后重定向
- 如果执行了if语句,如何在延迟之后重定向
- 只有在重定向行之后调用alert()时,greasemmonkey发出的重定向才有效
- 在已经使用的响应节点js之后重定向
- 在Ajax GET之后重定向
- 在日期和时间之后重定向
- 在ASP之后从iframe重定向到父窗口的新页面.净回发
- 在表单POST之后重定向
- Windows位置不要在XMLHttpRequest之后重定向
- 即使在页面重定向之后,ajax调用也会结束吗?
- 在jQuery AJAX之后重定向问题
- 重定向至JS函数(Ionic,AngularJS)之后的另一个html页面-Cordova
- MSIE低于10的特性检测重定向发生在加载不同的.js库之后