【发布时间】:2013-03-25 17:30:01
【问题描述】:
我们正在尝试构建一个 facebook 应用程序,将用户的消息发布到 facebook 业务页面(用户不是该页面的管理员)。我们需要来自 USER,而不是页面或页面的帖子行政。我们正在使用 facebook PHP SDK,到目前为止,我们已经完成了让用户的消息发布到他们自己的提要。 (使用应用程序访问令牌。)虽然当我们尝试将消息发布到 facebook 页面(不归用户所有)时,我们会收到此错误:
Fatal error: Uncaught OAuthException: (#200) The user has not authorized the application to perform this action throw in
是否可以代表用户发布到不属于用户所有的 Facebook 页面?我们是 facebook 页面的管理员,但如果我们使用页面访问令牌发布,则该帖子不再由用户创作,而是由 facebook 页面或页面管理员创作。
这是我们的代码的 sn-p,看看我们是如何处理这个问题的:
以用户身份发布到用户的供稿(作品)
$fbpage = "/$fbid/feed";
$attachment = array(
'message' => $msg,'from' => array('name' => $name,'id' => $fbid));
$result = $facebook->api('/'.$fbpage.'?access_token='.$accesstoken, 'post', $attachment);
以用户身份发布到 facebook 页面(不起作用)
$fbpage = "/johnsjoint/feed";
$attachment = array('message' => $msg,'from' => array('name' => $name,'id' => $fbid));
$result = $facebook->api('/'.$fbpage.'?access_token='.$accesstoken, 'post', $attachment);
【问题讨论】:
-
不会让你这样做,会为垃圾邮件打开大门。
-
用户授予您什么权限?用户喜欢这个页面吗?该页面是否允许非管理员用户在其上写帖子?
-
Igy,用户给了我们这些权限:email,read_stream,publish_stream,publish_actions,photo_upload,user_photos,user_photo_video_tags。用户喜欢该页面,并且该页面确实允许用户向其发帖。
-
所以看起来这是不可能的。其他人有任何想法还是我们应该关闭它?