Yii2: Twitter API

yii2 twitter apiВведение

В данной заметке мы рассмотрим не oauth  аутентификацю пользователей в вашем приложении при помощи официального расширения yii2-authclient, мы рассмотрим возможность использовать функционал  twitter через  single access token.

Это не так сложно, но я думаю, что информация будет полезна многим начинающим.

Получение токена

Первым делом нужно зарегистрировать свое приложение. Сначала мы получаем Consumer Key и Consumer Secret, затем генерируем новый токен и получаем Access Token и Access Token Secret.

Приступим

Для начала нужно установить уже упомянутый yii2-authclient.

Полученные ключи от твиттера Consumer Key, Consumer Secret, Access Token и Access Token Secret можно хранить в параметрах приложения:

// ...
'params' => [
    'twitterApiKey' => 'НАШ CONSUMER KEY',
    'twitterApiSecret' => 'НАШ CONSUMER SECRET',
    'twitterAccessToken' => 'НАШ ACCESS TOKEN',
    'twitterAccessTokenSecret' => 'НАШ ACCESS TOKEN SECRET'
]
// ...

Как это работает

use yii\authclient\clients\Twitter;
use yii\authclient\OAuthToken;

// Создаем OAuthToken
$token = new OAuthToken([
    'token' => Yii::$app->params['twitterAccessToken'],
    'tokenSecret' => Yii::$app->params['twitterAccessTokenSecret']
]);

// Запускаем Twitter используя полученный $token
// recently created token
$twitter = new Twitter([
    'accessToken' => $token,
    'consumerKey' => Yii::$app->params['twitterApiKey'],
    'consumerSecret' => Yii::$app->params['twitterApiSecret']
]);

var_dump($twitter->api('statuses/home_timeline.json', 'GET'));
die();

Примечание

В некоторых случаях может появляться ошибка Invalid Token. В большинстве из них достаточно просто перегенерировать токен.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *