我在使用Facebook API时遇到了很多麻烦。我使用的任何示例代码都给我服务器错误500.我正在尝试发布到我的Facebook页面的链接(此代码来自Facebook在其文档中提供的示例代码)。为了澄清,我确实有一个app-id,secret-id,我相信我从Graph API获得了正确的访问令牌。我知道我需要一个public_action权限来发布一个链接,但是我读它的方式,我认为访问令牌默认使用public_action。
<?php
$appid = '{app-id}';
$appsecret = '{app-secret}';
$redirect_uri = 'http://mywebsite.com';
// Define the root directoy
define( 'ROOT', dirname( __FILE__ ) . '/' );
// Autoload the required files
require_once( ROOT . 'facebook-php-sdk-v4-4.0-dev/autoload.php' );
$fb = new Facebook\Facebook([
'app_id' => '{app-id}',
'app_secret' => '{app-secret}',
'default_graph_version' => 'v2.2',
]);
$linkData = [
'link' => 'http://www.example.com',
'message' => 'User provided message',
];
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->post('/me/feed', $linkData, '{access-token}');
} 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();
echo 'Posted with id: ' . $graphNode['id'];
?>
我真的不知道我做错了什么。同样,它说“我”应该是我的Facebook用户ID吗?谢谢。