如何使用 SDK 5.0 获取 Facebook 帐户的页面?

How can I get the pages that a Facebook account has with SDK 5.0?

从这里开始:https://developers.facebook.com/docs/graph-api/reference/user/accounts/我必须在我的代码中写这个

$request = new FacebookRequest(
             $session,
             'GET',
             '/{user-id}/accounts'
           );

$response = $request->execute();

这里的问题是 API 的 2.8 版和 SDK 5.0 execute() 不存在。如何获取 Facebook 帐户上所有页面的列表。

您有正确的端点,您只需要确保在 PHP 中有正确的调用:

$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.5',
]);

// Sets the default fallback access token so we don't have to pass it to each request
$fb->setDefaultAccessToken('{access-token}');

$response = $fb->get('{user-id}/accounts');

同时记住:

  • 您需要确保您的应用正在请求 manage_pages 权限。
  • 这只有 return 个用户是管理员的页面。如果他们担任任何其他角色,则不会 return 该页面。

@JayNCoke 的方法是正确的。

$fb = new Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.5',
]);

// Sets the default fallback access token so we don't have to pass it to each request
$fb->setDefaultAccessToken('{access-token}');

$response = $fb->get('{user-id}/accounts');

$响应returns一个Facebook\FacebookResponse对象

要以可用的数据格式获取它,只需像下面这样调用 getDecodedBody()

$response = $response->getDecodedBody();

这returns一个数组。