如何通过使用开放ID谷歌应用引擎登录的用户获得唯一身份

时间:2014-07-04 01:05:53

标签: java google-app-engine openid

我刚刚遇到Google App引擎,正在尝试开发一个网站。部分网站应允许用户登录。 我计划提供两种选择。

  1. 使用我自己实施的帐户管理员登录会话及其他内容 - 根据 this SO question 不是很难
  2. 使用开放ID帐户登录
  3. 当使用我自己的登录表单时,我可以强制通过电子邮件地址/用户名字段等创建唯一身份,但是如何从开放ID用户获取唯一身份?他们是否保证提供电子邮件 - 因为用户服务会给我一个保证有电子邮件的用户对象吗?

    非常感谢任何建议

1 个答案:

答案 0 :(得分:0)

要获取用户的唯一标识符,请使用User#getUserId()

  

返回一个不透明的字符串,该字符串唯一标识此User对象所表示的用户。

如果是开放ID帐户,您也可以使用User#getFederatedIdentity(),但是,我会说它不必始终返回唯一标识符。

  

提供商类型有两种:直接提供商,如谷歌和雅虎!只需要一个没有与之关联的用户名的通用联合身份。

     

相比之下,Flickr,WordPress,Blogger和LiveJournal被称为用户名提供商,因为它们都要求您提供一个URL。

查看更多详情here

无论如何,还有可能将用户对象存储为一个整体。 App Engine和Datastore支持开箱即用。