janu-software / facebook-php-sdk
Facebook Graph API的替代工具包
v0.3.0
2024-05-20 08:54 UTC
Requires
- php: >=8.1 <8.4
- guzzlehttp/psr7: ^2.5
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.15
- php-http/httplug: ^2.4
- php-http/message: ^1.14
- psr/http-message: ^2.0
- thecodingmachine/safe: ^2.5
Requires (Dev)
- guzzlehttp/guzzle: ^7.8
- jetbrains/phpstorm-attributes: ^1.0
- php-http/guzzle7-adapter: ^1.0
- phpunit/phpunit: ^10.3
- rector/rector: ^1.1
- stanislav-janu/phpstan: ^1.0
- symfony/deprecation-contracts: ^3.5
README
此仓库包含允许您从PHP应用程序访问Facebook平台的开源PHP SDK。基于facebookarchive/php-graph-sdk
v6。
安装
Facebook PHP SDK可以使用Composer安装。运行以下命令
composer require janu-software/facebook-php-sdk
您必须使用支持php-http/client-implementation
的客户端。
例如:使用Guzzle
composer require janu-software/facebook-php-sdk guzzlehttp/guzzle php-http/guzzle7-adapter
兼容性
用法
用户资料的简单GET示例。
require_once __DIR__ . '/vendor/autoload.php'; // change path as needed $fb = new \JanuSoftware\Facebook\Facebook([ 'app_id' => '{app-id}', 'app_secret' => '{app-secret}', 'default_graph_version' => 'v19.0', //'default_access_token' => '{access-token}', // optional ]); try { // If you provided a 'default_access_token', the '{access-token}' is optional. $response = $fb->get('/me', '{access-token}'); } catch(\JanuSoftware\Facebook\Exception\ResponseException $e) { // When Graph returns an error echo 'Graph returned an error: ' . $e->getMessage(); exit; } catch(\JanuSoftware\Facebook\Exception\SDKException $e) { // When validation fails or other local issues echo 'Facebook SDK returned an error: ' . $e->getMessage(); exit; } $me = $response->getGraphNode(); echo 'Logged in as ' . $me->getField('name');
完整的文档、安装说明和示例在此处可用:这里。
测试
- Composer是运行测试的先决条件。全局安装Composer,然后运行
composer install
安装所需文件。 - 在Facebook Developers上创建一个测试应用程序,然后从
tests/FacebookTestCredentials.php.dist
创建tests/FacebookTestCredentials.php
,并编辑它以添加您的凭据。 - 可以通过从根目录运行以下命令来执行测试
$ ./vendor/bin/phpunit
默认情况下,测试将向Graph API发送实时HTTP请求。如果您没有互联网连接,可以通过排除integration
组来跳过这些测试。
$ ./vendor/bin/phpunit --exclude-group integration
许可证
有关更多信息,请参阅许可证文件。
安全漏洞
如果您发现了一个安全问题,请直接联系维护者:s@janu.software。