joomla/twitter

Joomla Twitter 包

1.3.0 2018-05-25 02:35 UTC

This package is auto-updated.

Last update: 2024-09-18 19:09:37 UTC


README

弃用

由于没有进一步的更新计划,joomla/twitter包已被弃用。

使用Twitter包

Twitter包旨在提供一个简单的接口来与Twitter交互。它基于REST API。您可以在https://dev.twitter.com/docs/api找到有关API的文档。

实例化Twitter

实例化Twitter很简单

use Joomla\Twitter\Twitter;

$twitter = new Twitter;

这会创建一个基本的Twitter对象,可以使用活动访问令牌访问twitter.com上的资源。

通过实例化OAuth生成访问令牌。

https://dev.twitter.com/apps中创建一个Twitter应用程序以请求权限。实例化OAuth,传递所需选项。默认情况下,您必须手动设置并发送头信息到您的应用程序中,但如果您希望自动完成此操作,可以将选项'sendheaders'设置为true。

use Joomla\Http\Http;
use Joomla\Twitter\Twitter;
use Joomla\Twitter\OAuth;

$options = array(
    'consumer_key' => $consumer_key,
    'consumer_secret' => $consumer_secret,
    'callback' => $callback_url,
    'sendheaders' => true
);

$client = new Http;
$application = $this->getApplication();

$oauth = new OAuth($options, $client, $application->input, $application);

$twitter = new Twitter($oauth);

现在您可以进行身份验证并请求用户授权您的应用程序以获取访问令牌,但如果您已经存储了访问令牌,则可以将它设置为OAuth对象,如果它仍然有效,则应用程序将使用它。

// Set the stored access token.
$oauth->setToken($token);

$access_token = $oauth->authenticate();

当调用authenticate()方法时,只有当存储的访问令牌有效时才会使用它,如果没有访问令牌或存储的访问令牌无效,将创建一个新的访问令牌。该方法将返回将使用的有效访问令牌。

访问Twitter API的对象

Twitter包涵盖了REST API 1.1的大部分资源

  • Block对象与Block资源交互。
  • DirectMessages对象与Direct Messages资源交互。
  • Favorites对象与Favorites资源交互。
  • Followers对象与Followers资源交互。
  • Friends对象与Friends资源交互。
  • Help对象与Help资源交互。
  • Lists对象与Lists资源交互。
  • Media对象与多媒体资源交互。
  • Mute对象与静音用户相关的资源交互。
  • Places对象与Places和Geo资源交互。
  • Profile对象与Accounts的一些资源交互。
  • Search对象与Search和Saved Searches资源交互。
  • Statuses对象与Timelines和Tweets资源交互。
  • Trends对象与Trends资源交互。
  • Users对象与Users和Suggested Users资源交互。

创建Twitter对象后,使用它访问Twitter很简单

$users = $twitter->users->getUser($user);

这将检索由ID或屏幕名指定的给定用户的扩展信息。

更完整的示例

以下是一个展示Twitter包更多功能的示例。

use Joomla\Http\Http;
use Joomla\Twitter\Twitter;
use Joomla\Twitter\OAuth;

$token = array(
	'key' => "app_id",
	'secret' => "app_secret",
);
$my_url = 'http://localhost/twitter_test.php';

$options = array(
    'consumer_key' => $consumer_key,
    'consumer_secret' => $consumer_secret,
    'callback' => $callback_url,
    'sendheaders' => true
);

$client = new Http;
$application = $this->getApplication();

$oauth = new OAuth($options, $client, $application->input, $application);
$oauth->setToken($token);
$oauth->authenticate();

$twitter = new Twitter($oauth);

$statuses = $twitter->statuses;
$response = $statuses->tweet("The Twitter Package is amazing #joomla");

更多信息

以下资源包含更多信息

通过Composer安装

"joomla/twitter": "2.0.*@dev"添加到composer.json中的require块,然后运行composer install

{
	"require": {
		"joomla/twitter": "2.0.*@dev"
	}
}

或者,您可以直接在命令行中运行以下命令

composer require joomla/twitter "2.0.*@dev"