Facebook-API:如何设置"选项"而不是"设置/值"在为页面编写设置时

时间:2015-02-25 18:19:49

标签: facebook facebook-graph-api facebook-php-sdk

TLDR 我尝试通过API更改我的一个facebook页面的设置。 语法已经改变,但我无法弄清楚如何。

全文

docs的示例代码是:

/* PHP SDK v4.0.0 */
/* make the API call */
$request = new FacebookRequest(
  $session,
  'POST',
  '/{page-id}/settings',
  array (
    'setting' => 'USERS_CAN_POST_VIDEOS',
    'value' => false,
  )
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
/* handle the result */

如果我尝试我得到以下异常:

(#12) 'setting' is deprecated for versions v2.2 and higher

似乎在更改日志here

中注明了这一点

但我无法弄清楚新的语法。当我尝试以下内容时:

$request = new FacebookRequest(
  $session,
  'POST',
  '/{page-id}/settings',
  array (
    'option' => array(
            'USERS_CAN_POST' => true
        )
  )
);

我收到此错误:

OAuthException (#100) option requires exactly one key"

使用这种语法:

$request = new FacebookRequest(
  $session,
  'POST',
  '/{page-id}/settings',
  array (
        'USERS_CAN_POST' => true
    )
);

这次出错:

(#100) Requires exactly one and only one of the params: option,setting

那么现在设置选项的正确语法是什么?

谢谢!

1 个答案:

答案 0 :(得分:0)

我在Facebook上提交bug并在30分钟后得到答复(!)。这是所需的格式:

array (
        'option' => '{APPEARS_IN_RELATED_PAGES:true}'
)