2011-06-08 49 views
2

我的代碼不工作,上傳做得好,但標註失敗:(
它顯示致命錯誤:未捕獲OAuthException:(#121)無效的帶照片的身份證丟照片標記問題 - 的Facebook /圖形API

$facebook->setFileUploadSupport(true); 
$album_details = array(
'message'=> 'Description', 
'name'=> 'Name' 
); 
$create_album = $facebook->api('/me/albums', 'post', $album_details); 
$photo_details = array(
'message'=> 'Photo Description', 
'tags'=> makeTagArray($friendsID), 
); 
$photo_details['image'] = '@' . realpath('img/'.$img_name); 
// $upload_photo = $facebook->api('/'.$create_album['id'].'/photos', 'post', $photo_details); 

$upload_photo = $facebook->api('/'.$create_album['id'].'/photos?access_token='.$facebook->getAccessToken(),'post', $photo_details); 

function makeTagArray($userId) { 
foreach($userId as $id) { 
     $tags[] = array('tag_uid'=>$id, 'x'=>$x,'y'=>$y); 
     $x+=50; 
     $y+=50; 
    } 
$tags = json_encode($tags); 
return $tags; 
} 

其他必要的信息

'req_perms' => 'publish_stream,status_update,user_photos' 

我也試過,但沒有工作,就說明數據[]

$x=5; 
$response=''; 
for ($i=0;$i<count($friendsName);$i++) 
{ 
    $post_url = "https://graph.facebook.com/".$upload_photo['id']."/tags/".$friendsID[$i]."?access_token=".$facebook->getAccessToken()."&amp;x=".$x."&amp;y=80&amp;method=POST"; 
    $response = $response.file_get_contents($post_url); 
    $x = $x + 53; 
} 

Examle $ POST_URL對一個人的話,我這運行在一個循環中的所有人員

https://graph.facebook.com/Pic_ID/tags/620949133?access_token=Access_Token|2.AQDOMdHNge0UCXG6.3600.1307613600.1-100001916529381|lCYzRYy9YPJvy1WBqkuoGVWvd50&x=5&y=80&method=POST

顯示
{
"error" : {
"type": "OAuthException",
"message": "An access token is required to request this resource."
} }

我也有些變了值有意

+0

該問題與代碼無關,GRAPH API出現問題,現在它已解決:) – Sourav 2011-06-10 14:04:14

回答

2

此權限添加到所需的權限:user_photos

+0

仍然顯示**致命錯誤:未捕獲的OAuthException:(#121)無效的照片ID ** – Sourav 2011-06-08 13:08:44

0
  1. 您需要請求publish_stream許可。
  2. 您需要提出多個請求,每個Facebook用戶/頁面要添加1個標籤。

爲了讓你需要在Facebook的圖片ID和用戶ID的請求。 張貼要麼PHOTO_ID /標籤?到= USER_ID或PHOTO_ID /標籤/ USER_ID,與X & Y座標作爲變量。

看到這裏的官方文檔(http://developers.facebook.com/docs/reference/api/photo/)獲得更多指導。

+0

@sourav您能否提供示例post_url你正在嘗試使用,這將使你更容易看到你如何得到這個錯誤。 – CameraSchoolDropout 2011-06-09 06:31:37

+0

我更新了它,請看它! – Sourav 2011-06-09 12:59:57

+0

@sourav是否成功上傳相關照片?從您添加的網址中可以看出,您沒有收到出現在您的網址中的「photo_id」或pic_id。得到的是這裏所描述的帶照片的身份證,http://stackoverflow.com/questions/3484159/how-to-tag-photos-in-facebook-api它要求除了GraphAPI REST功能 – CameraSchoolDropout 2011-06-09 23:27:23

0

我不知道這是可能的,但你可以給它一個嘗試。首先嚐試上傳照片。然後從上傳的照片中獲取照片的ID,然後將標籤添加到上傳的照片中。

+0

問題是相同的 – Sourav 2011-06-17 17:31:44

相關問題