2017-01-08 1 views
2

J'utilise la connexion de Google et utiliser ce code pour authcomment obtenir le contact après la connexion Google

$client = new Google_Client(); 
$client->setApplicationName("Google OAuth Login Example"); 
$client->setClientId($client_id); 
$client->setClientSecret($client_secret); 
$client->setRedirectUri($redirect_uri); 
$client->setDeveloperKey($simple_api_key); 
$client->setAccessType('offline'); 
$client->setScopes(array('https://www.google.com/m8/feeds/',"https://www.googleapis.com/auth/userinfo.email")); 
$objOAuthService = new Google_Service_Oauth2($client); 

Voici maintenant obtenir un jeton d'accès du client et utiliser ce jeton d'accès de la récupération des contacts de l'utilisateur

$accessToken = client->getAccessToken(); 
    if ($client->getAccessToken()) { 
    $userData = $objOAuthService->userinfo->get(); 
    $_SESSION['access_token'] = $client->getAccessToken(); 

} 

maintenant, je veux connecter l'utilisateur contact de l'utilisateur ce jeton api et l'accès que j'ai de cours auth des utilisateurs de Google

$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results=' . $max_results . '&oauth_token=' . $accessToken; 
$xmlresponse = curl_file_get_contents($url); 
echo 'contact result='.$xmlresponse; 

Mais j'ai 401 statut http et pas en mesure d'aller chercher le contact de l'utilisateur. Aidez-moi s'il vous plaît comment j'ai reçu des email de contact d'utilisateur de connexion en utilisant le jeton d'accès que j'ai reçu pendant l'authentification.

Répondre

0

Le nom du paramètre correct est access_token pas oauth_token.

essayez ceci:

$url = 'https://www.google.com/m8/feeds/contacts/default/full?max-results=' . $max_results . '&access_token=' . $accessToken; 
$xmlresponse = curl_file_get_contents($url); 
echo 'contact result='.$xmlresponse; 

Remarque: l'API Google Contacts est une ancienne API GData vous ne serez pas en mesure d'utiliser la bibliothèque cliente php Google pour y accéder. Vous devriez regarder dans l'API Google People J'ai trouvé que les données retournées sont similaires à celles qui sont dans les contacts Google.