2012-08-08 48 views
4

这是我在这个网站上的第一篇文章,所以请原谅我,如果我屠杀它,但我会尽量做出一个清晰而直截了当的转发。谷歌联系人的API名称和电子邮件

我正尝试使用Google Contacts API从已验证的用户gmail帐户导入名称和电子邮件地址。我使用Google自己提供的通用代码来获取电子邮件地址。我试图修改它来抓取联系人的名字也无济于事。任何帮助将不胜感激。以下是我目前使用的代码。

$xml = new SimpleXMLElement($val->getResponseBody()); 

$xml->registerXPathNamespace('gd', 'http://schemas.google.com/g/2005'); 
$result = $xml->xpath('//gd:email'); 

$name_result = $xml->xpath('//title'); 

foreach ($result as $title) { 
    echo "<div>".$title->attributes()->address."</div>"; 
} 

foreach ($name_result as $name) { 
     echo "<div class='contact_alt'>".$name."</div>"; 
} 
+0

[PHP的GMAIL联系人XML解析与DOMDocument和cURL]的可能重复(http://stackoverflow.com/questions/6530050/php-gmail-contacts-xml-parsing-with-domdocument-and-curl) – yoda 2013-01-07 17:50:03

回答

1

另一种解决方案我用的是要求谷歌API和JSON回复,而不是XML。用gd:namespaces解析XML会变得棘手。 JSON会返回联系人姓名和电子邮件,它将成为使用json_decode()的问题。

$url = 'https://www.google.com/m8/feeds/contacts/%s/full' 
$url .= '&access_token=%s' 
$url .= &alt=json; 

只需添加&alt=json请求URL。