将标签添加到粉丝页面不起作用...错误:(#210)主题必须是页面

时间:2012-01-30 08:46:47

标签: facebook-graph-api coding-style facebook-php-sdk facebook-page

我正在尝试使用图形api / PHP SDK将标签添加到粉丝页面,我收到错误:

(#210) Subject must be a page

我尝试过使用用户access_token和页面access_token,但都无法正常工作。我已经尝试使用众多帐户的页面ID,但仍然没有去。这是我的代码:

<?php

$path="/PAGE_ID/tabs/";
$access_token="ACCESS_TOKEN";
$params = array(
     'app_id' => "APP_ID",
     'access_token' => $access_token
);
try{
        $install = $facebook->api($path, "POST", $params);
}catch (FacebookApiException $o){
        print_r($o);
}
?>

这是我得到的错误:

FacebookApiException Object
(
    [result:protected] => Array
        (
            [error] => Array
                (
                    [message] => (#210) Subject must be a page.
                    [type] => OAuthException
                )

       )

[message:protected] => (#210) Subject must be a page.
[string:Exception:private] => 
[code:protected] => 0

感谢您提供的任何帮助!

2 个答案:

答案 0 :(得分:0)

如果您不仅限于使用API​​将您的应用程序添加到您的页面,那么您可以通过此链接按照Facebook提供的说明进行操作:
https://developers.facebook.com/docs/reference/dialogs/add_to_page/

基本上,您可以使用对话框(请参阅上面的链接)或此直接网址将标签应用添加到您的页面:
https://www.facebook.com/dialog/pagetab?app_id=YOUR_APP_ID&display=popup&next=YOUR_URL

不要忘记将APP_ID替换为您的应用ID,将next替换为其他网址

答案 1 :(得分:0)

API调用被警告:https://developers.connect.facebook.com/bugs/149252845187252?browse=search_4f31da351c4870e34879109

但这是JS的解决方案:OAuthException "(#210) Subject must be a page." - 只是不要使用该库并自己进行调用。

我用PHP做到了:

<?php
  $url = 'https://graph.facebook.com/<PAGE ID>/tabs?app_id=<APP ID>&method=POST&access_token=<PAGE ACCESS TOKEN>&callback=test';

  $ch = curl_init();
  curl_setopt($ch,CURLOPT_URL,$url);
  $result = curl_exec($ch);
  curl_close($ch);
  echo $result;
?>

回声值应该类似于“test(true)”。