aspirin1988 / socialite
Laravel 5 socialite VK.com Mail.ru OK.ru
1.3
2020-05-15 03:45 UTC
Requires
- php: >=7.0
- laravel/socialite: >=3.0
This package is not auto-updated.
Last update: 2024-09-28 01:16:47 UTC
README
VK | Mail.ru | Ok.ru
安装
composer require aspirin1988/socialite
然后将其添加到: /app/Providers/AppServiceProvider.php
в фунцию boot(){
..//..//..
$this->bootVkontakte();
$this->bootMailru();
$this->bootOKru();
}
添加以下函数
private function bootVkontakte()
{
$socialite = $this->app->make('Laravel\Socialite\Contracts\Factory');
$socialite->extend(
'vkontakte',
function ($app) use ($socialite) {
$config = $app['config']['services.vkontakte'];
return $socialite->buildProvider(VkontakteProvider::class, $config);
}
);
}
private function bootMailRu()
{
$socialite = $this->app->make('Laravel\Socialite\Contracts\Factory');
$socialite->extend(
'mailru',
function ($app) use ($socialite) {
$config = $app['config']['services.mailru'];
return $socialite->buildProvider(MailruProvider::class, $config);
}
);
}
private function bootOKru()
{
$socialite = $this->app->make('Laravel\Socialite\Contracts\Factory');
$socialite->extend(
'okru',
function ($app) use ($socialite) {
$config = $app['config']['services.okru'];
return $socialite->buildProvider(OKruProvider::class, $config);
}
);
}
同时,在 /config/services.php 中添加相应的部分
'vkontakte' => [
'client_id' => APP_ID,
'client_secret' => APP_SECRET,
'redirect' => APP_REDIREDT_URL,
],
'mailru' => [
'client_id' => APP_ID,
'client_secret' => APP_SECRET,
'redirect' => APP_REDIREDT_URL,
],
'okru' => [
'client_id' => APP_ID,
'client_public' => APP_PUBLIcK_KEY,
'client_secret' => APP_SECRET,
'redirect' => 'APP_REDIREDT_URL,
],
使用
调用示例
/*Вызов метода авторизации через VK*/
public function authVkontakte()
{
return Socialite::driver('vkontakte')->redirect();
}
/*Получение и вывод данных пользователя VK*/
public function authVkontakteCallback()
{
$user = Socialite::driver('vkontakte')->user();
return response()->json($user);
}