2013-10-16 85 views
5

我在檢索用戶的聯繫人圖片時遇到了一個簡單問題。所以我做出Google Contacts API - 正在獲取圖片

$url = 'https://www.google.com/m8/feeds/contacts/default/full?alt=json&max-results=9999&oauth_token=' . $accessToken; 

一個請求,然後我得到我所提取的全名和電子郵件巨大的JSON。然後我試圖獲得聯繫人的形象,並沒有取得任何成功。

我得到的所有聯繫人,每個人都具有以下結構:

entry [id, updated, category, title, link, gd$email]. 

在鏈接部分,我有四個環節,其中前兩個是某種鏈接到的圖像內容,但我不能檢索它。

任何機構在做這類工作方面都有成功!

Tnx很棒!

順便說一句:如果我的案件的一些數據丟失,請報告,我也將其添加!

編輯:我也曾嘗試與URL

http://profiles.google.com/s2/photos/profile/" + userid + "?sz=" + size; 

到達圖像,但問題是我無法從接觸JSON獲得用戶ID。

+0

https://developers.google.com/google-apps/contacts/v3/#retrieving_a_contacts_photo爲什麼這不起作用?是不是「id」你需要的contactID? – awaigand

+0

問題是我沒有聯繫人ID,我在我的JSON中有一個字段ID,它具有「http://www.google.com/m8/feeds/contacts/adrian.1358%40gmail.com/base/10161fe0e87a941「 – Adrian

+0

也在JSON的鏈接部分,我有一個鏈接,如」https://www.google.com/m8/feeds/photos/media/adrian.1358%40gmail.com/10161fe0e87a941/1B2M2Y8AsgTpgAmY7PhCfg「 – Adrian

回答

-1

如果提到的標籤可用,如下所示再次提出請求。

$add = new Google_HttpRequest("https://www.google.com/m8/feeds/contacts/default/full?alt=json&v=3.0&max-results=500&access_token='.$token->access_token"); 
$add->setRequestMethod("GET"); 
$add->setRequestHeaders(array('GData-Version' => '3.0', 'content-type' => 'application/atom+xml; charset=UTF-8; type=feed')); 

$submit = $client->getIo()->authenticatedRequest($add); 
$sub_response = $submit->getResponseBody(); 

$temp = json_decode($sub_response, true); 

foreach ($temp['feed']['entry'] as $image) { 
    $google_contact_id = $image['link'][2]['href']; 
    if (isset($image['link'][0]['href'])) { 
    $photo = new Google_HttpRequest($image['link'][0]['href']); 
    $photo_val = $client->getIo()->authenticatedRequest($photo); 

    $photo_return = $photo_val->getResponseBody();      
    $imgData = base64_encode($photo_return); 
    $pro_image = 'data:image/jpeg;base64, ' . $imgData . ''; 
    } 
} 
相關問題