如何使用API​​将照片发布到Facebook页面的专辑(fanpage)?

时间:2011-09-04 05:39:15

标签: php facebook api post sdk

我正在以管理员身份构建Facebook页面。 并使用PHP和Facebook API开发一些应用程序。 我想做的是将照片上传到Facebook页面上的指定相册。 此时,我在发布到album_id后收到以下错误消息。

   “错误”:{       “type”:“OAuthException”,       “message”:“(#120)无效的专辑ID”

然后,我想知道一些事情。 如何获取Facebook页面的access_token不适合我。 权限(user_photos,publish_stream,manage_pages,photo_upload)就足够了? 最后,如果您有一些经验,请告诉我成功的示例代码?

1 个答案:

答案 0 :(得分:1)

要获取页面的访问令牌,请尝试以下操作:

$page_token_url = "https://graph.facebook.com/" . 
  $page_id . "?fields=access_token&" . $access_token;
$response = file_get_contents($page_token_url);
$resp_obj = json_decode($response,true);
$page_access_token = $resp_obj['access_token'];

对于权限publish_streammanage_pages就足够了。

对于实际发布图像,我正在做这个(有效):

$ch = curl_init("https://graph.facebook.com/$album_id/photos/");  
curl_setopt($ch, CURLOPT_POSTFIELDS,
    array('access_token'=>$page_access_token,
    'source'=>"@$filename",
    'message'=>$caption,
    'description'=>$message));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$rtn = curl_exec($ch);
curl_close($ch);
echo $rtn;