Python Flask-如何通过cookie /会话记住匿名用户?

时间:2018-12-22 21:49:39

标签: python flask session-cookies

我正在建立一个Flask网站,这是一项研究实验的一部分。 我需要能够记住匿名用户,以便我网站的每个访问者都是匿名且唯一的,但也要记住他们,以便他们无法再次进入该网站(他们将重定向到“谢谢您的参与”页面)

我该怎么办?我研究了flask.session(如何生成唯一的匿名ID并将其保存到用户cookie?)和Flask登录(必须通过用户登录才能获得ID),但没有找到解决此问题的具体方法。 / p>

请帮助。

1 个答案:

答案 0 :(得分:3)

对于您的问题,没有完美的解决方案,因为如果您是匿名用户,您将无法识别该用户。

最实用的方法可能是使用会话,并将它们完成调查后保存在会话变量中。但是,如果他们清除了Cookie,便可以再次进入该网站。

示例实现:

from flask import session, app

@app.before_request
def make_session_permanent():
    session.permanent = True

在调查表视图中:

if not "already_participated" in session:
    ... Display form

然后在您的提交视图中:

session["already_participated"] = True