Laravel-Socialite でソーシャルログイン機能を実装する
ソーシャルログイン機能を実装する
まずは、環境をインストール
composer create-project --prefer-dist laravel/laravel rose "5.4.*"
composer require laravel/socialite
Sqlite 設定
touch database/database.sqlite
設定ファイル編集
vi .env
DB_CONNECTION=sqlite
#DB_HOST=127.0.0.1
#DB_PORT=3306
#DB_DATABASE=homestead
#DB_USERNAME=homestead
#DB_PASSWORD=secret
GITHUB_CLIENT_ID=0000000000000000
GITHUB_CLIENT_SECRET=000000000000000000000000
GITHUB_REDIRECT=http://127.0.0.1:8000/auth/github/callback
ソーシャルログイン設定
vi config/app.php
'providers' => [
/*
* Package Service Providers...
*/
Laravel\Socialite\SocialiteServiceProvider::class,
'aliases' => [
'Socialite' => Laravel\Socialite\Facades\Socialite::class,
vi config/services.php
'github' => [
'client_id' => 'your-github-app-id',
'client_secret' => 'your-github-app-secret',
'redirect' => 'http://your-callback-url',
],
Value値は、以下ページの Oauth applications リンクから設定を行う
vi app/Http/Controllers/Auth/AuthController.php
<?php
namespace App\Http\Controllers\Auth;
use App\Http\Controllers\Controller;
use Socialite;
class AuthController extends Controller
{
/**
* Redirect the user to the GitHub authentication page.
*
* @return Response
*/
public function redirectToProvider()
{
return Socialite::driver('github')->redirect();
}
/**
* Obtain the user information from GitHub.
*
* @return Response
*/
public function handleProviderCallback()
{
$user = Socialite::driver('github')->user();
// $user->token;
}
}
vi routes/web.php
Route::get('auth/github', 'Auth\AuthController@redirectToProvider');
Route::get('auth/github/callback', 'Auth\AuthController@handleProviderCallback');
Login Page Setting.
php artisan vendor:publish
php artisan make:auth
Server Start
php artisan serve
以下URLにアクセスすると、Githubの認証画面が表示されるはず。
Author And Source
この問題について(Laravel-Socialite でソーシャルログイン機能を実装する), 我々は、より多くの情報をここで見つけました https://qiita.com/rhinonolike/items/93e593ef2525475e01d2著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .