当有人使用google或openid登录我的网站时,如何获取用户名和电子邮件?谷歌回归了什么?

时间:2010-02-15 08:13:57

标签: python django openid pinax

我使用了pinax,登录我网站的用户,使用openid,现在已成功。 我只想在他们返回时获得用户名和电子邮件。

谷歌openid网址是:https://www.google.com/accounts/o8/id

和yahoo openid url是:http://yahoo.com/

我怎么能得到它?

3 个答案:

答案 0 :(得分:1)

答案 1 :(得分:1)

有两种主要方法可以做到这一点。一个是使用“简单 注册“(sreg)OpenID的扩展。这似乎是最简单的 虽然它在使用myopenid.net作为我的终端时起作用,但是我 无法让它与谷歌合作。

第二种方法是使用“属性交换”(ax)扩展。我能够在Pylons下使用Authkit进行一些调整。我相信你可以和Django一样。我建议您从关于其AX支持的Google文档开始:http://code.google.com/apis/accounts/docs/OpenID.html

答案 2 :(得分:0)

@jamieb - 也许你的意思是myopenid.com?

即使很晚,我也希望分享我在这个问题上的经验,以帮助他人。我在这些上花了一天时间!

我使用了https://github.com/flashingpumpkin/django-socialregistration并且仅在以下网站上进行了简单注册实验:

  • Google - 没有返回任何信息,或者我需要深入挖掘
  • 雅虎 - 没有返回任何信息,或者我需要深入挖掘
  • myOpenID - 是的!您需要添加用户在登录/注册过程中将选择的注册角色。对于每个角色,您可以指定图片,全名,昵称,电子邮件,生日,性别,网站/网址,邮政编码,国家/地区,语言。

因此,要回答这个问题,如果您使用简单注册,则无法从Google或Yahoo获取该用户的电子邮件或用户名。