joomla/facebook

Joomla Facebook 包

1.3.0 2018-05-25 02:24 UTC

This package is auto-updated.

Last update: 2024-09-18 17:23:13 UTC


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"