flask - Flask Session Cookie 不保存?
问题描述
所以我拥有的是一个非常基本的 Flask 应用程序,其中包含一些用户帐户登录设置。我想要做的是在发布到“/登录”之后,我想重定向回主页,如果我的会话 cookie 显示我已登录,它会显示一个不同的页面。但是,每次我重定向回“/home”时,它都会让我回到登录模板。知道如何解决这个问题吗?我应该提到这不是使用 Flask-Login,我使用 PyMongo db 作为用户数据库进行了设置。
@route.app('/home')
if 'username' in session:
render_template('home.html')
else:
render_template('login.html')
@route.app('/login', methods=['POST'])
users = mongo.db.users
login = users.find_one({'name' : request.form['username']})
if login:
if bcrypt.checkpw(request.form['password'], login['password']):
session['username'] = request.form['username']
redirect(url_for('home'))
else:
return "<h1>booo</h1>"
解决方案
好吧,作为一个更新,我不太确定为什么if 'username' in session:
不起作用,尤其是因为它在同一文件的其他地方用于另一条路线,但将其切换为 if not session.get('username') is None:
最终起作用。
推荐阅读
- python-3.x - 如何通过ip地址请求https?
- arrays - 需要帮助使用类显示随机数生成器选择并输出到文件
- swift - 当我在另一个类中声明一个类时有什么问题吗?
- python - 为什么我的 Python POST 请求会引导我进入初始网页?
- python - PyCharm-Project 可执行文件
- reactjs - 嵌套形式的反应和派生状态
- swift - 2 .onReceive() 功能与定时器不工作
- python - 基于模糊匹配查找和替换列表中的值
- python - 分类变量处理期间的数据泄漏?
- javascript - 由于某些奇怪的原因,Js 在控制台中输出错误的日期