API контактов Google не возвращает системные группы - PullRequest
2 голосов
/ 27 августа 2011
https://www.google.com/m8/feeds/groups/default/full/6

Это должно вернуть список всех контактов в системной группе Мои контакты, но там написано «Группа не найдена».

Когда я запрашиваю список всех групп контактов, он возвращает только определенные пользователем группы.

Когда я запрашиваю список всех моих контактов, он дает мне все мои контакты, ноэто не говорит мне, в какую группу они входят, если это не пользовательская группа.

Есть какие-либо идеи относительно того, что я делаю неправильно?

Редактировать: я перенаправляю сюда

https://accounts.google.com/o/oauth2/auth?client_id=819467938951.apps.googleusercontent.com&redirect_uri=http://subomain.website.com/back.html&scope=https://www.google.com/m8/feeds/&response_type=code

И это источник back.html (изменен с http://php.dzone.com/news/execute-http-post-using-php-cu)

<?php
$token = $_GET["code"];

$url = 'https://accounts.google.com/o/oauth2/token';
$fields = array(
        'code'=>urlencode($token),
        'client_id'=>urlencode("819467938951.apps.googleusercontent.com"),
        'client_secret'=>urlencode("secret key"),
        'redirect_uri'=>urlencode("http://subdomain.website.com/back.html"),
        'grant_type'=>urlencode("authorization_code")
    );

//url-ify the data for the POST
foreach($fields as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
rtrim($fields_string,'&');

//open connection
$ch = curl_init();

//set the url, number of POST vars, POST data
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_POST,count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);


//execute post
$result = curl_exec($ch);

//close connection
curl_close($ch);

$result=json_decode($result, true);

$access_token = $result["access_token"];

print_r(file_get_contents("https://www.google.com/m8/feeds/groups/default/full/6?access_token=" . $access_token));
?>

1 Ответ

4 голосов
/ 29 августа 2011

получить все контакты из группы в PHP

Как только я установил v = 2, системные группы наконец-то появились!

https://www.google.com/m8/feeds/groups/default/full?v=2

Чтобы получить контакты в группе, установите group = url группы

https://www.google.com/m8/feeds/contacts/default/full?v=2&group=http://www.google.com/m8/feeds/groups/default/base/6
...