zooxsmart/fb-graph-sdk

PHP 的 Facebook SDK

5.7.2 2024-02-01 12:18 UTC

README

注意:此分支正在积极开发中。请使用 5.x 分支 以获取稳定版本。

Build Status Scrutinizer Code Quality Code Coverage Development Version

此存储库包含开源 PHP SDK,允许您从您的 PHP 应用程序访问 Facebook 平台。

安装

您可以使用 Composer 安装 Facebook PHP SDK。运行以下命令

composer require facebook/graph-sdk php-http/curl-client guzzlehttp/psr7

为什么需要额外的包?我们为您提供了选择 HTTP 客户端(例如 cURL 或 Guzzle)和您偏好的 PSR-7 实现的灵活性。有关更多信息,请参阅 HTTPlug 文档

用法

注意:此版本的 PHP Facebook SDK 需要 PHP 5.6 或更高版本。

用户个人资料简单 GET 示例。

require_once __DIR__ . '/vendor/autoload.php'; // change path as needed

$fb = new \Facebook\Facebook([
  'app_id' => '{app-id}',
  'app_secret' => '{app-secret}',
  'default_graph_version' => 'v2.10',
  //'default_access_token' => '{access-token}', // optional
]);

// Use one of the helper classes to get a Facebook\Authentication\AccessToken entity.
//   $helper = $fb->getRedirectLoginHelper();
//   $helper = $fb->getJavaScriptHelper();
//   $helper = $fb->getCanvasHelper();
//   $helper = $fb->getPageTabHelper();

try {
  // Get the \Facebook\GraphNode\GraphUser object for the current user.
  // If you provided a 'default_access_token', the '{access-token}' is optional.
  $response = $fb->get('/me', '{access-token}');
} catch(\Facebook\Exception\FacebookResponseException $e) {
  // When Graph returns an error
  echo 'Graph returned an error: ' . $e->getMessage();
  exit;
} catch(\Facebook\Exception\FacebookSDKException $e) {
  // When validation fails or other local issues
  echo 'Facebook SDK returned an error: ' . $e->getMessage();
  exit;
}

$me = $response->getGraphUser();
echo 'Logged in as ' . $me->getName();

完整的文档、安装说明和示例在此 可用。

测试

  1. 运行测试需要 Composer 作为先决条件。全局安装 composer,然后运行 composer install 以安装所需文件。
  2. Facebook 开发者 上创建测试应用程序,然后从 tests/FacebookTestCredentials.php.dist 创建 tests/FacebookTestCredentials.php 并编辑它以添加您的凭据。
  3. 您可以通过在根目录下运行以下命令来执行测试
$ ./vendor/bin/phpunit

默认情况下,测试将向 Graph API 发送实时 HTTP 请求。如果您没有网络连接,可以排除 integration 组以跳过这些测试。

$ ./vendor/bin/phpunit --exclude-group integration

贡献

为了接受您的贡献,您必须首先签署 贡献者许可协议。有关详细信息,请参阅 CONTRIBUTING

许可

有关更多信息,请参阅 许可文件

安全漏洞

如果您发现了一个安全问题,请直接联系维护者 me@sammyk.me