胎嘎侯
昨天將文件要求搞定了之後,今天要註冊GitHub API的應用程序。先登入Github帳戶,點選下方的Settings->再點選Developer settings。
點選New OAuth App,註冊OAuth應用程序,完成後會得到Client ID、Client Secret,此處筆者將訊息遮蔽。
註冊過程非常簡單,如果您是自己建立路由而非使用官方文件的範例,要特別注意Authorization callback URL要和設置的路由相同。
回到config/services.php
,還記得昨日加入的Github環境配置嗎?填入剛剛註冊拿到的Client ID、Client Secret資訊。
'github' => [
'client_id' =>'**********',
'client_secret' => '******************************',
'redirect' => 'http://127.0.0.1:8000/login/github/callback',
],
接著回到SocialController,使用輔助方法dd()印出給定變數並結束腳本執行,在這裡加上dd($user),看看印出獲取的授權訊息為何。
public function handleProviderCallback()
{
//利用第3方登入與github溝通,取得使用者訊息
$user = Socialite::driver('github')->user();
dd($user);
}
執行php artisan serve
,將網址加上路由URLlogin/github
,按下Enter應出現下圖
按下Authorize按鈕,來看看dd函式印出的授權用戶資訊,其實下方顯示的內容還有很多,但就不全部貼上來了。
成功拿到了Github登入的資訊!
疑,使用者不想註冊網站會員所以選了第3方登入的服務,但是但是,我們需要登入用戶資料來進行網站分析,該怎麼把他們放入資料庫呢?
先賣個關子,我們明天見!
如文章有任何問題,不吝賜教,歡迎歡迎。
參考來源:
從簡單到繁複的OAuth2
#1 LINE Login 與 OAuth 2.0