登录Tornado后如何重定向到原始URL

时间:2018-11-22 02:52:08

标签: python tornado url-redirection

如果我打开需要访问的url登录,登录完成后,我希望重定向到原始url。我如何在龙卷风中实现这一目标?我在Google中搜索,但没有找到有用的信息。我使用了以下代码,但是它不起作用。

def LoginHandler(RequestHandler):
    if not self.current_user:
        self.render("login.html")
    else:
        self.redirect(self.request.headers["Referer"])

我使用了Google开发人员工具,发现将URL重定向到登录页面时,请求标头中不存在“ Referer”字段。

1 个答案:

答案 0 :(得分:0)

如果您使用@web.authenticated要求在处理程序上登录,它将使用next参数中的当前URL将用户重定向到登录页面。

例如,如果您请求/protected/page,并且您尚未登录,则将使用该URL-/login?next=/protected/page重定向到登录页面。

在您的登录处理程序中,检查next参数并重定向。

self.redirect(self.get_query_argument('next', '/default/url/if/next/is/empty'))