我已经花了太多时间与现在战斗,已阅读所有我能找到的关于此问题但尚未回答,请帮助。Facebook应用可以在fanpage墙上发布消息,但不能上传图片
我试图使用Facebook应用程序和图形API上张贴一个Facebook页面墙上的图像:
<?php
$facebook = new Facebook(array(
'appId' => $this->settings['app_id'],
'secret' => $this->settings['app_secret'],
'fileUpload' => true,
));
$facebook->destroySession();
$filename = dirname(__FILE__) . '/upset.jpg';
$args = array(
'message' => 'Test',
'image' => '@' . realpath($filename),
'access_token' => $this->settings['user_access_token'],
);
try {
$result = $facebook->api($this->settings['fanpage_id'] . '/photos',
'post', $args);
var_dump($result);
}
catch(Exception $e) {
echo $e->getType() . "\n" . $e->getMessage() . "\n";
}
此代码真的发布消息页面墙(当我更换“/照片”与'/ feed'),并真正张贴照片到用户墙(当我更改$ this->设置['fanpage_id'] $ user_id),但没有照片到页面墙。
它确实上传图片:$ result包含上传图片的ID,我可以在Facebook上看到它,但不是在页面的相册中,而是在用户的。
P.S.我试图通过调用/ accounts来获得页面访问令牌 - 结果相同。 P.P.S.用户访问令牌有manage_pages,photo_upload和其他权限(除了offline_access实际上)
我必须给应用程序的manage_pages,对吧?你能用几句话告诉我如何检查以及如何实际授予这些权利?我不确定。 – Andrey 2012-08-02 15:33:06
是的,我也更新了我的答案,并为您添加了一些参考。检查出来,看看是否有帮助。 – 2012-08-02 15:41:03
manage_pages和“照片”更改“feed”是我的关键。谢谢。 – dlopezgonzalez 2014-02-06 15:44:46