【发布时间】:2019-05-13 07:18:51
【问题描述】:
我使用 django 开发了一个网站。最近我正在尝试使其无服务器(通过部署到 lambda )。在部署到 lambda 时,我还没有弄清楚用户登录后如何维护会话。请提供任何建议。
【问题讨论】:
标签: django amazon-web-services zappa
我使用 django 开发了一个网站。最近我正在尝试使其无服务器(通过部署到 lambda )。在部署到 lambda 时,我还没有弄清楚用户登录后如何维护会话。请提供任何建议。
【问题讨论】:
标签: django amazon-web-services zappa
您可能知道,lambda 是无状态的。您可以使用一些数据库,即 Dynamo DB 来存储和检索会话相关信息,即连接令牌。否则,您可以与为您处理身份验证和会话信息的 AWS Cognito 服务集成。
【讨论】:
user.is_authenticated 这样的事情,对吧?
只要有适当的基础设施可用,Django 固有的大多数会话功能都可以在 zappa 部署的 Django 项目中正常工作。例如,如果您选择数据库支持的会话,那么您的 Django 部署必须有权访问数据库。但是你必须避免基于文件的会话,因为你不能保证文件对于任何给定的用户请求都存在(请求被路由到的 lambda 容器不是确定性的)。
有关 Django 会话的更多信息,请参阅documentation
【讨论】: