Php/laravel/laravel5/facebookログイン
提供: 初心者エンジニアの簡易メモ
2016年8月5日 (金) 06:10時点におけるAdmin (トーク | 投稿記録)による版 (ページの作成:「==facebookAppのID取得== 以下でAppIDとapp secretを取得 https://developers.facebook.com ==ソーアシャルライブラリインストール== $ composer requi...」)
facebookAppのID取得
以下でAppIDとapp secretを取得 https://developers.facebook.com
ソーアシャルライブラリインストール
$ composer require laravel/socialite
コード追加
$ vi config/app.php 'providers' => [ Laravel\Socialite\SocialiteServiceProvider::class, ], 'aliases' => [ 'Socialite' => Laravel\Socialite\Facades\Socialite::class, ],
$ vi config/services.php 'facebook' => [ 'client_id' => env('FACEBOOK_ID'), 'client_secret' => env('FACEBOOK_SECRET'), 'redirect' => env('FACEBOOK_CALLBACKURL'), ],
$ vi .env FACEBOOK_ID=xxxxxxxxx FACEBOOK_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx FACEBOOK_CALLBACKURL=http://localhost/facebook/callback
$ vi app/Http/routes.php Route::group(['middleware' => 'web'], function () { Route::get('facebook','FacebookController@facebookLogin'); Route::get('facebook/callback','FacebookController@facebookCallback'); });
$ vi app/Http/Controller/FacebookController.php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; use App\Http\Controllers\Controller; use Laravel\Socialite\Contracts\Factory as Socialite; class FacebookController extends Controller { protected $socialite; public function __construct(Socialite $socialite) { $this->socialite = $socialite; } public function facebookLogin() { return $this->socialite->driver('facebook')->redirect(); } public function facebookCallback() { $fuser = $this->socialite->driver('facebook')->user(); $fuser->getId(); $fuser->getName(); $fuser->getEmail(); return $fuser->getEmail(); } }