[英]Post photo to facebook page using javascript and graph api
我正在使用Facebook JavaScript sdk將照片發布到某些粉絲頁面上,這是我的代碼
<form enctype="multipart/form-data" method="post" action="https://graph.facebook.com/<page_id>/feed" target="ifram_name">
<input name="source" type="file" style="font-size:13px;" />
<input type="hidden" name="to" value="113342002047830"/>
<input type="hidden" name="access_token" value="user_accesstoken"/>
<input type="hidden" name="type" value="photo" />
</form>
它說“ 缺少消息或附件 ”。
我也嘗試將“操作”更改為“ https://graph.facebook.com//feed”,但是照片隨后被上傳到用戶的相冊。
有人可以告訴我代碼中缺少什么嗎?
您應該使用user
, page
或album
(而非feed
)的photos
連接,並為用戶/頁面提供有效的access_token
。
<form action="https://graph.facebook.com/PAGE_ID/photos"
method="post" enctype="multipart/form-data">
<input name="source" type="file">
<input type="hidden" name="to" value="113342002047830"/>
<input type="hidden" name="access_token" value="user_accesstoken"/>
</form>
您可以在(已有很久的歷史)博客文章如何:使用Graph API將照片上傳到用戶的個人資料中閱讀更多詳細信息。
請注意,這將上傳文件,但是不會對此通知您的應用程序/代碼,用戶將看到如下響應:
{
"id": "1001207389476"
}
如果不希望這樣做,請使用服務器端技術上傳照片。 另一種選擇是將JS-SDK與url
參數一起使用:
FB.api('/PAGE_ID/photos', 'post', {
url: 'http://example.com/image.png',
message: 'Upload demo'
}, function(response){
if (response && response.id)
console.log('Photo uploaded', response.id);
});
更新:
請注意,您應該使用頁面的access_token
才能發布到頁面的牆上,如果您提供access_token
,則無論to
參數如何,用戶照片都會上傳到用戶的應用相冊中。 有關如何獲取頁面的access_token
詳細信息,請參見頁面身份驗證 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.