我长期在网上搜索这个问题,但似乎没有什么能解决它。
我只是在Facebook页面上写一篇帖子,帖子在页面上是可见的,但只有我自己,而不是其他管理员或用户。
怎么可能?
我正在使用这个功能(我也非常确定整个代码正在工作,因为帖子在页面上!):
$ postResult = $ facebook-> api($ post_url,'post',$ msg_body);
首先我猜测这是一个隐私问题,但该页面没有这种参数。
整个代码是:
post_url = '/'.$page_id.'/feed';
$page_info = $facebook->api("/$page_id?fields=access_token");
//die(print_r($page_info));
//posts message on page statues
$msg_body = array(
'access_token' => $page_info['access_token'],
'message' => "test"
);
if ($fbuser) {
try {
$postResult = $facebook->api($post_url, 'post', $msg_body );
} catch (FacebookApiException $e) {
echo $e->getMessage();
}
}
$page_info = $facebook->api("/$page_id?fields=access_token");
//die(print_r($page_info));
//posts message on page statues
$msg_body = array(
'access_token' => $page_info['access_token'],
'message' => "test"
);
if ($fbuser) {
try {
$postResult = $facebook->api($post_url, 'post', $msg_body );
} catch (FacebookApiException $e) {
echo $e->getMessage();
}
}
@ ------------ @ EDIT @ ------------ @
我仍然遇到同样的问题,我也检查了一个“手动”发布的提要和来自我的脚本的提要,字段完全相同......这太疯狂了。
@ ------------ @ EDIT II:@ ------------ @
我尝试了卷曲,似乎没有任何效果:/
答案 0 :(得分:2)
问题已经解决。
作为一个白痴,SandBox模式被激活(我不知道该应用程序完成的任务被SandBox绑定)。
答案 1 :(得分:0)
您需要某种页面访问令牌才能执行此操作。
另外,$post_url
代表什么?我们无法从您编写的代码中猜出来。无论如何,您使用$pageid/feed
或me/feed
(和访问令牌)发布。它应该类似于$facebook->api( '/me/feed/', 'post', array('access_token' => $page_access_token, 'message' => 'Test message', 'link' => 'http://somelink.com') );