重定向到金字塔中的切割URL

时间:2016-03-18 13:21:50

标签: python url pyramid pylons web-frameworks

我有一个网址:http://localhost:4284/?session_expired=true 现在我发送和AJAX-Request的东西,返回应该是一个带有'http://localhost:4284/'的HTTPFound。 切割URL不是问题,但金字塔或浏览器都忽略了更改,因此将参数session_expired保留在窗口位置:(

由于

2 个答案:

答案 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!