Facebook的文档不充分,充其量令人困惑。
我创建了一个应用,我为自己的业务创建了一个页面。我想使用php-sdk从我的网站发布该页面上的更新作为我的应用程序。
我让它与其他网页/网站完美配合,但似乎没有任何工作。
我需要offline_access,所以我按照文档中的建议跟踪了新的端点。
获取具有更长期限的access_token的顺序:
https://www.facebook.com/dialog/oauth?client_id={my_app_id}&redirect_uri=http://my_url.redirect/fb/fb_token.php&scope=publish_stream,offline_access,user_status,read_stream,email,user_groups,manage_pages&response_type=token
返回[TOKEN_1]
https://graph.facebook.com/oauth/access_token?client_id={my_app_id}&client_secret={my_app_secret}&grant_type=fb_exchange_token&fb_exchange_token=[TOKEN_1]
返回[ACCESS_TOKEN]
https://graph.facebook.com/me/accounts?access_token=[ACCESS_TOKEN]
返回我的网页和应用列表以及相关的ID和访问代码。这是我得到我的最终[DEFINITIVE_ACCESS_TOKEN]&& [PAGE_ID]
$facebook = new Facebook(array(
'appId' => {my_app_id},
'secret' => {my_app_secret},
'cookie' => false,
'oauth' => true
));
try {
$attachment = array(
'access_token' => [DEFINITIVE_ACCESS_TOKEN],
'message' => {my_message},
'name' => {my_title},
'link' => {my_url},
'description' => {my_description},
'picture' => {my_image_url},
);
$publishStream = $facebook->api('/[PAGE_ID]/feed', 'POST', $attachment);
} catch (FacebookApiException $e) {
die($e);
}
这返回了一条错误消息“OAuthException:(#200)actor所在页面的帖子也不能包含target_id”
我哪里错了?是否有一个教程可以让它在任何地方完美地工作,或者我们应该都是读者并猜测它应该如何完成?
提前感谢您的帮助。
答案 0 :(得分:0)
我注意到您正在使用离线访问
自2012年5月1日起,离线访问将不再可用。
看到这个 https://developers.facebook.com/roadmap/offline-access-removal/
确保您已完成此操作。
〜ķ