2

我試圖直接將本地圖片上傳到頁面Feed(即「Wall Photos」專輯)。將圖片上傳到Facebook Wall/Feed via Graph API

這是代碼,我認爲應該工作

<?php 
$facebook = new Facebook(array(
    'appId' => $the_app_id, 
    'secret' => $this_app_secret, 
)); 
$facebook->setAccessToken($the_access_token); 
$facebook->setFileUploadSupport(true); 

$attachment = array(
    'message' => $the_post_body, 
    'name' => $this_image_name, 
    'picture' => '@' . $the_absolute_path_to_image 
); 

$result = $facebook->api('/me/feed, 'post', $attachment); 

但這代碼只是得到一個純文本的牆後有「消息」的內容(即畫面場似乎忽略)。我也嘗試過「/ page_id/feed」,結果相同。

現在,只需將端點更改爲「/ me/photos」,就可以將照片上傳到具有應用程序名稱的「正常」專輯中,但我希望它儘可能地像普通帖子那樣因此進入「Wall Photos」專輯)。

我意識到我可以通過使用FQL查詢圖來實現此目的,以找到「Wall Photos」專輯的object_id,但如果它不存在,則需要額外的權限才能創建它,我寧願將權限保留爲儘可能簡單。

如果有人可以指出如何將照片上傳到「/ me/feed」,我將不勝感激。

回答

1

但這只是代碼產生一個純文本壁交與 「消息」的內容(即,圖像字段看似忽略)。我也嘗試過 「/ page_id/feed」,結果相同。

您只能給圖片鏈接,而不是數據。

現在,簡單地改變端點「/我/照片」,並在 照片上傳到與應用程序的名稱「正常」的專輯,但我希望它 看起來就像一個正常的儘可能張貼,因此進入 「Wall Photos」專輯)。

是的,它創建一個默認的相冊基於應用程序。如果已經存在,則上傳到相冊。並生成一個帖子。

我意識到,我可以通過查詢與FQL圖形以 找到「長城照片」專輯的OBJECT_ID實現這一點,但如果它不 存在,這將需要額外的權限來創建它,我會 寧願保持權限盡可能簡單。

您無法上傳到我/飼料終點的fb。您應該存儲在您的服務器/ s3 /某些服務中,並將公共網址發送給我/ feed參數。

+0

感謝您的回答 - 所以,只是爲了澄清,您**不能**(即不可能)直接上傳圖像到「/ */feed」?這似乎與@FaizanQadri [here]找到的結果不一致(http://stackoverflow.com/questions/10165264/facebook-api-works-fine-for-feed-but-not-for-photos) –

+0

是, 這是不可能的。你發現了什麼不一致?他沒有上傳/ */feed的圖片。 – Venu

相關問題