Google-API-PHP-Client - Service-Kontakte

Habe ich, nach Stunden der Tiefe, Tiefe Schmerz endlich ein bisschen näher an die Konfiguration und Nutzung der Google-API-PHP-Client, mit dieses tutorial (basierend auf Analytics obwohl).

So, jetzt habe ich endlich auth meiner selbst, in einer Weise, die scheint echt und offiziellen. Meine Natürliche Gedanke war, dass es existieren würde, eine contrib/Google_ContactsService.php, aber zu meiner überraschung, es ist nirgends zu finden amogst die 32 anderen service-Klassen.

Fühle ich mich wieder wie zu kratzen. Gibt es eine Möglichkeit, ich kann - echt und offiziell - fetch einem bestimmten Nutzer Kontakte? (Tonnen von tutorials gibt, die aber alle veraltet und hacky).

EDIT: ich merke, es ist eine neuere version der Bibliothek verfügbar hier, aber es ist noch nicht alle "Kontakte" - service zu finden in der .../Service/Ordner

EDIT:
Meine Fortschritte bisher. Die letzten Zeilen scheitert mit der Antwort von Google: 401. There was an error in your request. - ich denke, das ist, weil der Mangel der Berechtigung (ich habe nicht gefragt, für Kontakte-Berechtigung). Aber wie mache ich das, ohne die "Google_ContactsService.php"? Ich bin verloren. Siehe code:

<?php
session_start();

/**
 * Require the libaries
 */

    require_once 'assets/php/Google/Google_Client.php';
    require_once 'assets/php/Google/contrib/Google_AnalyticsService.php'; //from tutorial - I am supposed to get the Contacts Service, which is nowhere to find.

/**
 * Set up the Google_Client
 */

    $client = new Google_Client();
    $client->setAccessType('online'); //default: offline
    $client->setApplicationName($apiConfig['application_name']);
    $client->setClientId($apiConfig['oauth2_client_id']);
    $client->setClientSecret($apiConfig['oauth2_client_secret']);
    $client->setRedirectUri($apiConfig['oauth2_redirect_uri']);
    $client->setDeveloperKey($apiConfig['developer_key']); //API key

/**
 * $service implements the client interface, has to be set before auth call
 */

    $service = new Google_AnalyticsService($client);

/**
 * Log out
 */

    if (isset($_GET['logout'])) { //logout: destroy token
        unset($_SESSION['google_token']);
        exit('Logged out.');
    }

/**
 * Google auth code received
 *
 * Store access token
 */

    if (isset($_GET['code'])) { //we received the positive auth callback, get the token and store it in session
        $client->authenticate();
        $_SESSION['google_token'] = $client->getAccessToken();
    }

/**
 * Set auth token
 */

    if (isset($_SESSION['token'])) { //extract token from session and configure client
        $token = $_SESSION['token'];
        $client->setAccessToken($token);
    }

/**
 * If no token, redirect and auth
 */

    if (!$client->getAccessToken()) { //auth call to google
        $authUrl = $client->createAuthUrl();
        header("Location: ".$authUrl);
        exit;
    }

/**
 * Get contacts
 */

    $access_token = json_decode($client->getAccessToken())->access_token;

    $url = 'https://www.google.com/m8/feeds/contacts/default/full?alt=json&v=3.0&oauth_token='.$access_token;

    $response =  file_get_contents($url);

    exit($response);

    echo 'Hello, world.';
InformationsquelleAutor FooBar | 2014-03-25
Schreibe einen Kommentar