我开始使用php sdk,并努力理解一些事情(我在下面有一个基本的例子 - 但每次图片都去我的墙而不是粉丝页面)
法典:
require_once("facebook.php"); // set the right path
$config = array();
$config['appId'] = 'app id';
$config['secret'] = 'app secret';
$config['fileUpload'] = true; // optional
$fb = new Facebook($config);
$params = array(
// this is the access token for Fan Page
"access_token" => "I create this via the graph api (select App and click get token), I select publish stream and photo_upload permissions.",
"message" => "test message",
"source" => "@" ."photo.png", // "@" .
);
try {
// **** is Facebook id of Fan page
$ret = $fb->api('/****/photos', 'POST', $params);
echo 'Photo successfully uploaded to Facebook Album';
} catch(Exception $e) {
echo $e->getMessage();
}
图片一直转到我的墙(登录用户)而不是粉丝页面,那是因为我获得了当前登录用户(我)的令牌而不是粉丝页面吗? 如果是这样,如何在以开发人员身份登录时为粉丝页面生成令牌?(是通过将粉丝页面 ID 放入获取栏吗?
为菜鸟问题道歉,但 facebook 文档很糟糕(当然,直到您了解核心功能)。一旦您知道如何使用图形 API,大多数教程都可以工作 - 实际上没有一个 解释如何使用图形生成正确的令牌等。
'POST /<ID>/photos
— 这将只张贴在<ID>
的墙上,所以请仔细检查你正在使用的<ID>
。
访问令牌将描述照片将代表谁张贴在<ID>
墙上。如果您使用用户访问令牌,照片将代表用户发布,如果使用页面访问令牌,它将代表页面本身发布。
您可以通过以下方式获取页面的页面访问令牌-
'GET /me/accounts?fields=access_token
(需要权限:manage_pages
)
演示