1

我想使用 OpenID(PHP 和 LightOpenID)来获取以下用户信息:

    $openid->required = array(
      'namePerson',
      'namePerson/first',
      'namePerson/last',
      'contact/email',
      'person/guid',
      'birthDate/birthYear',
      'birthDate/birthMonth',
      'birthDate/birthday',
      'gender',
    );  

但是,我发现 Yahoo 和 Google 都只返回以下数据:

 Array ( [namePerson] => abc [contact/email] => abc@example.com ) 

我的代码有问题吗?我可以强制谷歌和雅虎返回我想要的所有数据吗?

4

1 回答 1

2

Google 和 Yahoo OpenID 实现都尊重 Attribute Exchange 中的“必需”,但不是您要查找的所有属性。以下是他们各自的文档,列出了他们的架构支持的属性。

https://developers.google.com/accounts/docs/OpenID#Parameters

在本文发布时,这些是 Google 当前支持的字段

  • 国家
  • 电子邮件
  • 语言

http://developer.yahoo.com/blogs/ydn/yahoo-openid-now-attribute-exchange-7795.html

在本文发布时,这些是雅虎当前支持的字段

于 2013-06-24T17:30:49.040 回答