我知道,使用谷歌应用引擎提供的用户服务,cookies 会在后台自动创建,我永远不需要处理它们。但是,对于我的特定项目,我需要创建一个自定义用户数据库 - 我将如何知道用户已登录或退出?我是否必须为用户浏览器等创建 cookie?
干杯,罗伯
我知道,使用谷歌应用引擎提供的用户服务,cookies 会在后台自动创建,我永远不需要处理它们。但是,对于我的特定项目,我需要创建一个自定义用户数据库 - 我将如何知道用户已登录或退出?我是否必须为用户浏览器等创建 cookie?
干杯,罗伯
不,你没有。您需要做的就是启用会话,通过添加
<sessions-enabled>true</sessions-enabled>
到你的appengine-web.xml
文件。请参阅文档。.
本质上,GAE 是一个 servlet 容器。因此,您几乎可以利用任何标准 Java servlet 容器所具有的所有机制。会话是这些机制之一。
所以你会做的是:
request.getSession(true)
以获取当前会话,或者如果尚未完成则创建一个新会话。session.getAttribute("userId")
。请注意,“userId”只是一个示例,它本质上是一个字符串对象映射,您可以在其中存储几乎任何东西。session.setAttribute("userId", user.getId())
试试看!这真的是轻而易举,一切都为您完成,无需自己处理 cookie、会话令牌或任何东西。