【发布时间】:2019-09-21 08:27:16
【问题描述】:
我正在尝试使用 Facebook PHP SDK v5将图片发布到属于 Facebook 页面的相册。
我已经检查了(许多)类似的问题,但是它们都与 SDK 的早期版本有关,当时仍然允许使用 publish_actions。
我的设置:
- 我的应用程序配置正确,我能够检索我的访问令牌
- 我能够毫无问题地运行一些测试 API 查询
- 我是此页面的管理员,我的访问令牌具有以下权限
['manage_pages','publish_pages','user_photos'] - SDK 已使用
'fileUpload' => true作为参数正确初始化
将图片发布到相册的代码
它基于example provided in the SDK documentation。
<?php
require_once __DIR__.'/vendor/autoload.php';
$fb = new Facebook\Facebook(['app_id' => '123456', 'app_secret' => '123456', 'default_graph_version' => 'v3.3', 'fileUpload' => true]);
$picture = 'https://www.example.com/pic.jpg';
$album_id = '123456';
$access_token = 'mytoken';
try {
$response = $fb->post('/'.$album_id.'/photos', array ('url' => $picture), $access_token);
}
catch(Facebook\Exceptions\FacebookResponseException $e) {
die('Graph returned an error: ' . $e->getMessage());
}
catch(Facebook\Exceptions\FacebookSDKException $e) {
die('Facebook SDK returned an error: ' . $e->getMessage());
}
$graphNode = $response->getGraphNode();
这是我遇到的错误
Graph 返回错误:(#200) 此端点已被弃用,因为 所需权限 publish_actions 已弃用
确实,changes introduced in April 2018 删除了使用 publish_actions 的功能,但文档似乎没有相应更新。
将图片发布到页面相册的新方法是什么?
非常感谢您的帮助!
【问题讨论】:
标签: facebook-graph-api facebook-php-sdk facebook-apps