我正试图找出如何在Facebook粉丝页面上发布Facebook所称的"页面之声"。
我有以下代码:
$fb = new Facebook'Facebook([
'app_id' => '17xxxxxxxxxx',
'app_secret' => 'exxxxxxxxxx',
'default_graph_version' => 'v2.4',
]);
$helper = $fb->getRedirectLoginHelper();
try {
$accessToken = $helper->getAccessToken();
} catch(Facebook'Exceptions'FacebookSDKException $e) {
// There was an error communicating with Graph
echo $e->getMessage();
exit;
}
if (isset($accessToken)) {
// User authenticated your app!
// Save the access token to a session and redirect
$_SESSION['facebook_access_token'] = (string) $accessToken;
// Log them into your web framework here . . .
// Redirect here . . .
print_r($accessToken);
//// get following data from the db or just replace them ////
$params["message"] = $title;
$params["link"] = $targetUrl;
$params["picture"] = $imgUrl;
$params["description"] = $description;
// post to Facebook
try {
// Returns a `Facebook'FacebookResponse` object
$response = $fb->post('/229101234342377163/feed', $params, $accessToken);
} catch(Facebook'Exceptions'FacebookResponseException $e) {
echo 'Graph returned an error: ' . $e->getMessage();
exit;
} catch(Facebook'Exceptions'FacebookSDKException $e) {
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
$graphNode = $response->getGraphNode();
当这个运行时,我得到错误:
Graph returned an error: Unsupported post request.
据我所知,我需要访问我试图发布到的页面令牌?我该怎么做?请帮忙!
您也需要获得页面访问令牌,下面是如何做到这一点。它将为您提供所有页面及其相应访问令牌的列表。
https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens
"不支持的发布请求"也可能意味着您的应用程序仍处于测试模式。