我有一个网址:http://localhost:4284/?session_expired=true 现在我发送和AJAX-Request的东西,返回应该是一个带有'http://localhost:4284/'的HTTPFound。 切割URL不是问题,但金字塔或浏览器都忽略了更改,因此将参数session_expired保留在窗口位置:(
由于
答案 0 :(得分:1)
AJAX请求不会影响窗口位置(我想您希望浏览器由于AJAX请求而转到一个全新的页面,因此浏览器地址栏中的地址会发生变化)。
在处理AJAX请求的响应时,您可以在JavaScript中手动执行此操作:
$.ajax(
...
}.done(function (data) {
if (data.redirect_to) {
window.location = data.redirect_to;
}
});
在上面的示例中,服务器返回200 Ok状态,其中JSON响应类似于{"redirect_to": "http://localhost:4284/"}
。您可能更喜欢返回不同的HTTP状态,而是在错误处理程序中处理它。
答案 1 :(得分:0)
如果要返回HTTPFound-Object,请不要将其解析为JSON,而是将其解析为HTML!