2

我正在尝试获取可见的Google+连接。 通过参考文档https://developers.google.com/+/web/samples/php, 很明显,添加'plus.login'作用域可以获取G +连接,年龄范围和语言。Google+示波器PLUS.LOGIN未要求提供Google Circle连接权限

但在我的情况下,这个范围只要求取得年龄范围和语言的权限。我无法获取G +连接。

我试过在我的应用程序中使用google-api-php-client。也遵循新应用程序中提到的快速入门指南,但访问权限页面不包括圈子权限中的G +连接。代码

一部分是低于

define('SCOPES', implode(' ',array(
    Google_Service_Plus::PLUS_ME, Google_Service_Plus::PLUS_LOGIN,Google_Service_Plus::USERINFO_EMAIL, Google_Service_People::CONTACTS 
      )) 
     ); 

     Class GoogleClient { 
      function getClient() { 
       $client = new Google_Client(); 
       $client->setApplicationName(APPLICATION_NAME); 
       $client->setScopes(SCOPES); 
       $client->setAuthConfig(CLIENT_SECRET_PATH); 
       $client->setAccessType('offline'); 

$this->authUrl = $client->createAuthUrl(); 

重定向到上面创建AuthUrl结果要求在画面

enter image description here

$plusConnections = new \Google_Service_Plus($client); 
      $optParamsConnections = ['maxResults' => 99]; 
      $_people    = $plusConnections->people->listPeople('me', 'visible', $optParamsConnections); 

$ _People犯规得到任何数据显示的权限。然而,对于在谷歌API的探险家试图在同一用户的连接retrived

任何建议,为什么这种奇怪的行为,以及如何解决它 感谢

+0

没有看到你的代码,我们不能帮助你找出什么是错的。它也很难理解问题究竟是什么。我不认为它会弹出并通过添加该范围明确请求连接权限。 – DaImTo

+0

我想获取g + circle连接,这可能使用PLUS_LOGIN作用域,但在我的情况下并未要求权限。 其他两件事情,即年龄范围和PLUS_LOGIN的Lanugage访问正在被询问。问题在哪里? – Gunnrryy

+0

没有。范围没有具体说明它要求的权限。只要你使用plus登录你应该有权限访问。 – DaImTo

回答

2

plus.login范围的检索连接的能力,以及People.list端点本身,已被弃用:

的Google+使用者API列表终点已被弃用。过去,https://www.googleapis.com/auth/plus.login范围除了允许用户的名称和个人资料信息之外,还允许访问用户圈子中的人员列表。从2016年9月开始,plus.login范围的新增资助将只允许访问用户的姓名和个人资料信息;调用API返回这些新登录的空圈数据。在2017年第一季度,您将获得所有用户的空圈数据。

https://developers.google.com/+/web/people/#retrieve-a-collection-of-people

+0

谢谢。我查看了你分享的链接。因此我可以获得用户的GoogleContacts。我的问题是,有没有其他的方式来获取一个圈子的G +连接?我试着找到它,但还没有找到有用的文档。 – Gunnrryy

0

认证权限的屏幕仅仅是一个标准的屏幕。它没有具体说明你有权访问哪些方法。您应该检查的文件在这种情况下

People.list

授权
此请求需要以下范围的至少一个(阅读更多关于身份验证和授权)的授权。
范围https://www.googleapis.com/auth/plus.login

只要您发送的plus.login范围和用户接受它,你就可以使用该方法people.list。我实际上认为那个“Basic profile info”是你正在寻找的那个,它可以让你访问很多用户的一般Google Plus信息。

边注:您应该尝试发送电子邮件范围或配置文件。如果内存服务他们都只是陈述“offline Access”哪些国际海事组织甚至更误导用户。

+0

@DalmTo我看到了文档,因为你可以看到我已经通过了plus.login作用域,但我无法获取我的任何连接。这是工作,并要求屏幕上的权限访问圈内的人。 – Gunnrryy

+0

我需要看到你用于People.list的代码,确保你发送的是“可见的”尝试在文档页面的底部尝试我,这样你就可以了解API的工作原理。 – DaImTo

+0

已经编辑了OP,并提到了我实际提出请求的控制器代码。 – Gunnrryy