不支持删除请求.'删除照片标签通过Facebook PHP SDK 4


'Unsupported delete request.' removing photo tags via Facebook PHP SDK 4

我有以下代码,我想在照片中取消自己的标签。

use Facebook'FacebookSession;
use Facebook'FacebookRequest;
use Facebook'GraphUser;
use Facebook'FacebookRequestException;
FacebookSession::setDefaultApplication('<appid>','<appsecret>');
$session = new FacebookSession('<my access token>');
$request = new FacebookRequest(
  $session,
  'DELETE',
  '/<id of photo im tagged in>/tags',
  array (
    'id' => '<my fb id>',
  )
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
/* handle the result */
var_dump($response);
var_dump($graphObject);

我有user_photospublish_actions的权限,我正在使用的访问令牌(如前所述,需要删除照片标签)。

然而,当我运行上面的代码时,我得到了这个错误:

Fatal error: Uncaught exception 'Facebook'FacebookAuthorizationException' with message 'Unsupported delete request.'

我试着做完全在文档中,但我不能弄清楚我做错了什么,为什么我得到这个。

我怎么做才能让它工作?

删除标签的正确方法是:

$request = new FacebookRequest(
  $session,
  'DELETE',
  '/<id of photo im tagged in>/tags',
  array (
    'tag_uid' => '<my fb id>',
  )
);
$response = $request->execute();
$graphObject = $response->getGraphObject();

然而,这是不正确的文档。此外,只有被列入白名单的应用才能通过API删除标签。文档也没有包括这一点。如果你的应用程序没有被列入白名单,你会看到以下错误:

{"error": {"message": "(#3)应用程序没有能力进行此API调用","类型":"OAuthException","code": 3}}