2
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));
?>
4

1 回答 1

4

从 PHP 组中检索所有联系人

一旦我设置 v=2,系统组终于出现了!

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

要获取组中的联系人,请设置 group = group url

https://www.google.com/m8/feeds/contacts/default/full?v=2&group=http://www.google.com/m8/feeds/groups/default/base/6
于 2011-08-29T09:29:01.120 回答