【问题标题】:Python google appengine sessions using webapp2_extras confusionPython google appengine 会话使用 webapp2_extras 混淆
【发布时间】:2015-02-04 18:53:47
【问题描述】:

我正在尝试按照http://www.essentialtech.co.nz/content/using_session_google_app_engine_and_python_27 的说明创建用户会话。下面是登录页面处理程序类。一切都很好,但我无法理解 'self.session.get('referrer')' 会做什么。我搜索了一下,发现“HTTP_REFERER”指的是您来自的网站网址。但是为什么我们在这里的登录处理程序中需要它呢?如果有人能给我解释一下,我会很高兴。

class LogIn(BaseHandler):
    def get(self):
        if self.session.get('user'):
            del self.session['user']
        if not self.session.get('referrer'):
            self.session['referrer'] = \
                self.request.environ['HTTP_REFERER'] \
                if 'HTTP_REFERER' in self.request.environ \
                else '/'
        template_values = {
            }
        template = jinja_environment.get_template('login.html')
        self.response.out.write(template.render(template_values))

    def post(self):
        user = self.request.get('user')
        self.session['user'] = user
        logging.info("%s just logged in" % user)
        self.redirect('/')

【问题讨论】:

  • 我想它是用来知道登录后将用户重定向到哪里的。但是 POST 重定向到“/”,所以看起来不像是插入的,至少在这个 sn-p 中没有。但是,如果您来自完全不同的网站,这没有任何意义。所以也许它只是用于记录/跟踪目的。同样,在这个 sn-p 中没有详细说明。
  • 我完全同意@Gwyn Howell。也许将您的评论作为答案移动,以便用户接受?
  • 感谢@MarCialR。完成。

标签: python google-app-engine session


【解决方案1】:

我认为它用于知道登录后将用户重定向到哪里。但是 POST 重定向到“/”,所以看起来不像是插入的,至少在这个 sn-p 中没有。但是,如果您来自完全不同的网站,这没有任何意义。所以也许它只是用于记录/跟踪目的。同样,在这个 sn-p 中没有详细说明。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    • 2013-04-12
    • 2015-11-25
    • 2013-09-09
    • 2019-09-13
    • 2010-11-11
    相关资源
    最近更新 更多