這里拿Github賬號登陸做演示
首先安裝
composer require laravel/socialite
在app.php里添加ServiceProvider 和 alias
Laravel\Socialite\SocialiteServiceProvider::class,
'Socialite'=>Laravel\Socialite\Facades\Socialite::class,
在config/services.php 中添加
'github'=>[
? ? ? ? 'client_id'=>'your_client_id',
? ? ? ? 'client_secret'=>'your_client_secret',
? ? ? ? 'redirect'=>'your_callback_url',
],
獲取方法參考:https://github.com/settings/applications
添加路由:
Route::get('login/github','Auth\LoginController@redirectToGithubLogin');
Route::get('login/github/callback','Auth\LoginController@githubLoginCallback');
添加方法:
然后訪問login/github即可
如果出現cURL error 60: SSL certificate: unable to get local issuer certificate這樣的錯誤
下載文件https://gist.github.com/VersatilityWerks/5719158/download放到D:\wamp64\bin\php\php7.0.0\extras\ssl\cacert.pem(參考)
然后修改php.ini的curl.cainfo字段信息為 ?= "D:\wamp64\bin\php\php7.0.0\extras\ssl\cacert.pem"
(注意 文件名.擴展名 一定要完全對應)
===================================================
現在只是驗證了第三方登陸的可行性,接下來繼續改造。
LoginController
新建BindController
新建bind.blade.php
更新路由
OK
。