dev-master
9999999-devOAuth Authorization via tweet and youtube
MIT
The Requires
- php ^7.1.3
- laravel/framework 5.6.*
- guzzlehttp/guzzle ~6.1
by Sultanov Denis aka Mio
Wallogit.com
2017 © Pedro Peláez
OAuth Authorization via tweet and youtube
Данный пакет предназначен для laravel 5.6+, для работы с API youtube.com и twitch.tv. В данное время доступна только oAuth авторизация и получение информации о текущем пользователе с этих ресурсов., (*2)
UPD: 23.07.2018 добавлена возможность авторизации по Steam. English soon, (*3)
composer require densul/oautwitube
Затем добавить в файле config/app.php, добавить сервис-провайдер, (*4)
densul\oautwitube\Providers\OautwitubeServiceProvider::class
Там же задать алиас:, (*5)
'Twitube' => densul\oautwitube\Facades\OautwitubeServiceFacade::class
Далее создаем конфиг:, (*6)
php artisan vendor:publish
Выбираем наш сервис провайдер
После этого появится конфиг в /config/oautwitube-api.php, (*7)
Для площадки youtube подтребуется включить API 3, здесь. Для площадки steam, ключ получаем тут здесь., (*8)
В шаблонизаторе:, (*9)
<div class="links">
<a href="{{ Twitube::driver('twitch')->AuthenticationURL() }}">Auth Twitch</a>
<a href="{{ Twitube::driver('youtube')->AuthenticationURL() }}">Auth YouTube</a>
</div>
В случае стима, можно поставить кнопки уже с готовой ссылкой:, (*10)
{!! Twitube::driver('steam')->loginButton('small') !!}
{!! Twitube::driver('steam')->loginButton('big') !!}
<!--- simple link ---!>
Twitube::driver('steam')->AuthenticationURL()
Соответственно какой Вы задатите redirect_url в конфиге, создаем роуты:, (*11)
Route::get('/auth', ['as' => 'auth', 'uses' => 'Auth\LoginController@twitchLogin']);
Route::get('/auth_youtube', ['as' => 'auth', 'uses' => 'Auth\LoginController@youtubeLogin']);
Route::get('/auth_steam', ['as' => 'auth', 'uses' => 'Auth\LoginController@steamLogin']);
В LoginController:, (*12)
public function twitchLogin(Request $request)
{
$code = $request->input('code');
$token = Twitube::driver('twitch')->RequestToken($code);
$user = Twitube::driver('twitch')->AuthenticatedUser($token);
dd($user);
}
public function youtubeLogin(Request $request)
{
$code = $request->input('code');
$token = Twitube::driver('youtube')->RequestToken($code);
$user = Twitube::driver('youtube')->AuthenticatedUser($token);
dd($user);
}
public function steamLogin(Request $request)
{
$user = Twitube::driver('steam')->authenticatedUser();
dd($user);
}
Пока все, функционал буду дописывать по мере необходимости, следите за обновлениями., (*13)
OAuth Authorization via tweet and youtube
MIT