joomla / facebook
Joomla Facebook 包
Requires
- php: ^5.3.10|>=7.0 <7.2
- joomla/http: ~1.0|~2.0
- joomla/input: ~1.0|~2.0
- joomla/oauth2: ^1.1.2|~2.0
- joomla/uri: ~1.0|~2.0
Requires (Dev)
- joomla/coding-standards: ~2.0@alpha
- joomla/test: ~1.0
- phpunit/phpunit: ^4.8.35|^5.4.3|~6.0
Suggests
- joomla/registry: Registry can be used as an alternative to using an array for the package options.
README
已弃用
joomla/facebook
包已弃用,没有计划进行进一步更新。
使用 Facebook 包
Facebook 包旨在提供一个简单直观的界面来处理 Facebook。它基于 Graph API。您可以在http://developers.facebook.com/docs/reference/api/上找到有关 API 的文档。
实例化 Facebook
实例化 Facebook 很简单
use Joomla\Facebook\Facebook; $facebook = new Facebook;
这会创建一个基本的 Facebook 对象,可以用来访问不需要有效访问令牌的公开资源。
有时需要提供包含所需权限的有效访问令牌。这可以通过实例化 OAuth 来完成。
在https://developers.facebook.com/apps 上创建 Facebook 应用以请求权限。实例化 OAuth,传递所需的注册表选项。Facebook 应用的 API 密钥、API 密钥和回调 URL(即脚本的路径)通过注册表对象传递。默认情况下,您必须手动发送头信息,但如果您希望自动完成此操作,可以将注册表的 'sendheaders' 选项设置为 true。
use Joomla\Facebook\Facebook; use Joomla\Facebook\OAuth; $options = array( 'clientid' => $app_id, 'clientsecret' => $app_secret, 'redirecturi' => $callback_url, 'sendheaders' => true, 'authmethod' => 'get' ); $oauth = new OAuth($options); $facebook = new Facebook($oauth);
现在,您可以进行身份验证并请求用户授权您的应用程序以获取访问令牌,但如果您已存储访问令牌,则可以将其设置为 OAuth 对象,如果它仍然有效,则您的应用程序将使用它。
// Set the stored access token. $oauth->setToken($token); $access_token = $oauth->authenticate();
在调用 authenticate() 方法时,只有当存储的访问令牌有效时,才会使用它,如果没有访问令牌或存储的令牌无效,则将创建一个新的令牌。该方法将返回要使用的有效访问令牌。
设置 OAuth 对象的作用域。作用域是一系列用逗号分隔的请求权限
$oauth->setScope('read_stream,publish_stream');
访问 Facebook API 的对象
Facebook 包目前实现了 Graph API 的 12 个对象
- 相册
- 签到
- 评论
- 活动
- 群组
- 链接
- 笔记
- 照片
- 帖子
- 状态
- 用户
- 视频
创建 Facebook 对象后,可以简单使用它来访问 Facebook
$user = $facebook->user->getFeed($user_id);
这将检索包含(最多)最后 25 篇帖子的 Post 对象数组。
更完整的示例
以下是一个演示 Facebook 包更多功能的示例。
use Joomla\Facebook\Facebook; use Joomla\Facebook\OAuth; $app_id = "app_id"; $app_secret = "app_secret"; $my_url = 'http://localhost/facebook_test.php'; $options = array( 'clientid' => $app_id, 'clientsecret' => $app_secret, 'redirecturi' => $callback_url, 'sendheaders' => true, 'authmethod' => 'get' ); $oauth = new OAuth($options); $oauth->authenticate(); $facebook = new Facebook($oauth); $user = $facebook->user; $response = $user->getFeed("me");
更多信息
以下资源包含更多信息
通过 Composer 安装
将 "joomla/facebook": "2.0.*@dev"
添加到您的 composer.json 中的 require 块,然后运行 composer install
。
{ "require": { "joomla/facebook": "2.0.*@dev" } }
或者,您可以直接在命令行运行以下命令
composer require joomla/facebook "2.0.*@dev"
如果您想包含测试源,请使用
composer require --prefer-source joomla/facebook "~1.0"