无法使用php sdk将照片上传到Facebook页面时间线

时间:2013-10-23 13:09:23

标签: php facebook facebook-graph-api facebook-php-sdk

我有一个与facebook交互的PHP应用程序。我已经成功地将照片发布到用户墙,使用时间线和Facebook页面的墙上,但是当我尝试将相同的照片发布到Facebook页面时间线时,它会抛出错误“无效的appsecret_proof参数”。 我注释掉了尝试在base_facebook.php文件中设置appsecret_proof的代码,然后尝试运行它提供的应用程序“用户未授权应用程序执行此操作”错误。 我已经为应用程序提供了“photo_upload,publish_stream,publish_actions,manage_pages,user_photos”权限。我在进行以下调用之前设置了页面的访问令牌

$ret_obj = $facebook->api ( '/page_id/feed' , 'POST' , array(  
                                                'source'  => $photo ,
                                                'message' => $message ,
                                                'name' => 'vinay' ,
        ) );

我该如何解决这个问题?

编辑:我还在app高级设置中禁用了“要求AppSecret Proof for Server API调用”

1 个答案:

答案 0 :(得分:1)

如果您要发布到特定相册,请使用/album_id/photos,如果您不关心任何相册,只需使用:/page_id/photos

现在,如果您使用用户访问令牌,则照片将上传到该页面上(在以上两种情况中的任何一种情况下),但它将显示在以下部分的页面墙中:

  

其他人在PageName上的最新帖子

如果您希望在页面的时间轴上显示您的照片;必须使用页面访问令牌而不是用户访问令牌代表页面本身发布照片。

要获取具有权限/me/accounts权限的manage_pages的页面访问令牌查询。 Demo