我尝试在我的墙上发布新闻(适合所有人),但我的程序不起作用,你能帮帮我吗?
$app_config = array(
'appId' => 'xxxxxxxxxxxxxxxx',
'secret' => 'xxxxxxxxxxxxxxx',
'cookie' => true
);
$page_config = array(
'access_token' => 'xxxxxxxxxxxxxxxxxxxxxxxxx',
'page_id' => 'xxxxxxxxxxxxxxxxxxxxx'
);
$facebook = new Facebook($app_config);
$privacy=array('value' => 'EVERYONE');
$decri=array('name' => 'See the link', 'link' => 'http://www.xxxxxx.com');
$description="this is a test";
$picture="a.png";
$params = array(
'access_token' => $page_config['access_token'],
'name' => $title,
'caption' => 'www.xxxxxx.com',
'link' => 'http://www.xxxxxx.com',
'description' => $description,
'picture' => $picture,
'status_type' => 'mobile_status_update',
'type' => 'status',
'privacy' => json_encode($privacy),
'actions' => json_encode($decri)
);
$post_id = $facebook->api('/'.$page_config['page_id'].'/feed','post',$params);
但是没有发表,我不明白 非常感谢你
答案 0 :(得分:0)
从您的代码中,我假设您要发布到Facebook页面 - 在这种情况下,尤其是链接。
当您尝试发布链接时,不要将其发布到/PAGE_ID/feed
,而是将其发布到/PAGE_ID/links
(请参阅Facebook Documentation)。
在您的示例中,您的API请求应如下所示:
$post_id = $facebook->api('/'.$page_config['page_id'].'/links','post',$params);
此外,$picture
应该是一个链接,从http
或https
开始。
最后但并非最不重要的是确保您拥有publish_stream
和manage_pages
权限。
与文档相比,您使用的参数略有不同,因此请仔细检查documentation - 您似乎做了太多工作。