首页 > 解决方案 > 如何为 python flask web 应用程序进行会话管理?

问题描述

我对 python 烧瓶开发非常陌生,我刚刚完成了我的第一个网络应用程序。将我的 python 烧瓶网络应用程序放入一个简单的示例中,假设网络应用程序要求您使用用户 ID 和密码(通过 LDAP 验证)登录。登录后,Web 应用程序允许您在表单中输入数字,输入将附加到后端的列表中。

现在的问题是,假设用户 A 将“100”附加到后端的列表中。现在,当用户 B 从不同的浏览器登录时,他/她将看到“100”已附加到列表中。如何以用户 B 登录时有一个空列表的方式制作我的网络应用程序?因此,我希望用户 A 和用户 B 所做的更改仅针对他们。任何有关如何进行此操作的提示/解释将不胜感激。

标签: pythonsessionflaskweb-applicationssession-cookies

解决方案


您的应用程序需要一个数据库。有一个名为 SQLite3 的简单数据库,python 在标准库中有它。

您可以将用户凭据存储在session烧瓶应用程序中,例如:

session['user'] = request.form['user']

也就是说,当用户提交包含带有属性的输入的表单时name=user。您从提交的表单中收集数据,并将其存储在会话中。

在开始时,您可以检查用户是否使用以下内容登录:

if session.get('user') is not None:
    ...

您可以在此处阅读更多如何使用烧瓶创建 SQLite3 数据库。但是,如果您想了解更多信息,请了解什么是数据库、表,如何在其中创建表和数据,以及如何查询它们以获得正确的读写结果。


推荐阅读