如何使用Google+ API OAuth 2.0获得好友列表


How to get the friend list using Google+ API OAuth 2.0

我已经与Google+登录检索用户的基本个人资料信息(名称,url,位置,个人资料图片)。但我也想检索用户的朋友的用户id,以便我可以给他/她更好的建议谁的用户已经知道在我的网站。

$app_access_token = GetCH();
function GetCH(){
$ch = curl_init();
$pieces = explode(",", $_SESSION['access_token']); $piece = explode(":", $pieces[0]);
$token = str_replace('"',"",$piece[1]);
$url = "https://www.googleapis.com/oauth2/v1/userinfo?access_token=".$token;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETU`enter code here`RNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
if(substr($url,0,8)=='https://'){
    curl_setopt($ch,CURLOPT_HTTPAUTH,CURLAUTH_ANY);
    curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
}
$sendCH = curl_exec($ch);
curl_close($ch);
return $sendCH;
};
if ($client->getAccessToken()){ 
  $me = $plus->people->get('me');
  $user_id = filter_var($me['id'], FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
  $url = filter_var($me['url'], FILTER_VALIDATE_URL);
  $img = filter_var($me['image']['url'], FILTER_VALIDATE_URL);
  $name = filter_var($me['displayName'], FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
  // The access token may have been updated lazily.
  $_SESSION['access_token'] = $client->getAccessToken();
} else {
  $authUrl = $client->createAuthUrl();

}

更多信息:https://developers.google.com/apis-explorer/#p/plus/v1/但是我无法弄清楚如何从他们的API中获得朋友列表作为数组

Thanks in Advance

您需要使用:$plus->people->listPeople,您可以在PHP快速入门应用程序中找到使用示例。

首先,您应该确保您正在使用https://www.googleapis.com/auth/plus.login OAuth2作用域,以确保他们允许您访问部分或全部好友列表。您希望使用people.list API接入点,如本文所述,并在本页进一步详细说明。虽然他们没有提供PHP代码示例,但我认为您将能够使用$plus->people->列表进行调用并获得所需的信息。