我正试图将我的网站上的内容发布到我的facebook页面(使用最新的facebook api)。
连接到我的应用程序(运行良好)后,我有了这个代码,可以在我的时间线上发布一些内容。
$response = (new FacebookRequest(
$session, 'POST', '/me/feed', array(
'name' => 'Test 1',
'caption' => "Test 2",
'link' => 'https://www.google.com',
'message' => 'Test 3'
)));
这很好,但当我将"/me/feed"更改为"/nameofbusinesspage/feed"时,它似乎登录到了facebook,但随后返回了一条很长的错误消息。
致命错误:未捕获异常"Facebook''FacebookServerException",消息为"发生意外错误"。请稍后重试您的请求。
我应该如何参考商业/社区页面,有什么想法吗?
旧的SDK上有很多线程,但这是v4.0(看起来完全不同)。
您是否尝试使用'/id of businesspage/feed'而不是'/name of businesspage/fieed'?
终于明白了——对其他人来说。
以下是登录后与facebook建立的代码(由$session var引用)。
$pageid ="**********";
$get = (new FacebookRequest($session, 'GET', '/me/accounts'));
$accounts = $get -> execute() -> getGraphObject() -> asArray();
// get data object
$data = $accounts["data"];
// get access_token from account with matching id
foreach ($data as $page) {
if ($page -> id == $pageid) { $accesstoken = $page -> access_token; } }
// post to facebook account
$post = (new FacebookRequest($session, 'POST', '/'.$pageid.'/feed',
array('access_token' => $accesstoken,
'name' => 'Test 1',
'caption' => "Test 2",
'link' => 'https://www.google.com',
'message' => 'Test 3')));
$return = $post -> execute() -> getGraphObject() -> asArray();
$pageid是你的facebook页面的(数字)id(位于"设置"下)。
希望它能挽救我浪费在试错上的一天。