HWIOAuthBundle Google - 没有我想要的所有数据

时间:2014-08-27 07:56:20

标签: php symfony google-api hwioauthbundle

我在谷歌使用HWIOAuthBundle,我可以登录并使用它登录。但我需要掌握有关用户的所有信息(工作,教育,技能等),我收到的唯一信息是:

array (size=11)
  'id' => string 'XXXXXXXXXXX' (length=21)
  'email' => string 'XXXXXXX' (length=19)
  'verified_email' => boolean XXXXX
  'name' => string 'XXXXXX' (length=13)
  'given_name' => string 'XXXX' (length=6)
  'family_name' => string 'XXXX' (length=6)
  'link' => string 'XXXX' (length=45)
  'picture' => string 'XXXXXXX' (length=92)
  'gender' => string 'XXXX' (length=4)
  'locale' => string 'XXXXX' (length=2)
  'hd' => string 'XXXXX' (length=12)

在我的config.yml中,我有两个范围:

"https://www.googleapis.com/auth/plus.login"
"https://www.googleapis.com/auth/userinfo.email"
我在Google上的应用中激活了Google+ API。当我使用我的帐户和相同的范围尝试Google API资源管理器时,我会找到我想要的所有数据...

拜托,你能帮助我吗?

1 个答案:

答案 0 :(得分:2)

我找到了解决方案。

如果有人想要这样做,你需要在HWIOAuthBundle的config.yml中添加一个infos_url,这不在文档中,没有人在网上谈论这个,所以对于你需要添加的所有数据:

#HWIOAuth
hwi_oauth:
firewall_name: hwio_oauth
resource_owners:
    google:
        type: google
        client_id: XXX
        client_secret: XXX
        scope: "https://www.googleapis.com/auth/plus.login https://www.googleapis.com/auth/userinfo.email"
        options:
            access_type: offline
            infos_url: "https://www.googleapis.com/plus/v1/people/me"