oAuth 2.0 第三方登錄詳細(xì)介紹

本文以github第三方登錄為例,詳細(xì)介紹oAuth 2.0登錄過(guò)程。

注冊(cè)github賬號(hào),登錄后在個(gè)人信息頁(yè)面一次點(diǎn)擊Applications>Developer applications>Register a new application彈出如下界面


前三項(xiàng)就依據(jù)個(gè)人應(yīng)用添加 ? ? ?最后callback URL 就是回調(diào)的地址了 ? 添加對(duì)應(yīng)平臺(tái)的接口 ?github允許填寫(xiě)本地連接地址(開(kāi)發(fā)中直接填http://127.0.0.1:8080/xxx/xxx?這個(gè)地址要和授權(quán)的時(shí)候的傳入的地址參數(shù)一致 否則授權(quán)失?。?/p>

注冊(cè)之后 會(huì)得到 ?github提供的client id 和client secret 有了這兩個(gè)東東就可以換取更多的信息了

流程圖說(shuō)明:

1、用戶點(diǎn)擊github登錄本地應(yīng)用引導(dǎo)用戶跳轉(zhuǎn)到第三方授權(quán)頁(yè)這里就不拐歪了 跳轉(zhuǎn)地址為:

https://github.com/login/oauth/authorize?client_id=xxxxx&state=xxx&redirect_uri=xxxx

參數(shù)說(shuō)明 ?:client_id ?就不說(shuō)是啥了吧 ? redirect_uri:就是上面剛剛填的啦 ? state:隨機(jī)字符串(授權(quán)成功會(huì)原樣返回)

2 、授權(quán)成功后會(huì)回調(diào)我們平臺(tái),響應(yīng)信息中會(huì)帶code其他參數(shù)不理他了哈哈,我們帶著這個(gè)code再次訪問(wèn)github 地址:

https://github.com/login/oauth/access_token?client_id=xxxx&client_secret=xxx&code=xxx&redirect_uri=xxxx

參數(shù)不解釋了(每個(gè)具體代表什么意義可參考官方文檔https://developer.github.com/apps/building-oauth-apps/authorization-options-for-oauth-apps/),這次會(huì)得到響應(yīng)的access_token

3、成功獲取access_token后用這玩意再去換取用戶信息 地址:

https://api.github.com/user?access_token=xxx

之后我們就能得到用戶信息了,接下來(lái)就可以做想做的事情了

其他平臺(tái)思路都一樣了


流程圖示例
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 本文以一種簡(jiǎn)化的格式描述OAuth 2.0 ,以幫助開(kāi)發(fā)人員和服務(wù)提供者實(shí)現(xiàn)該協(xié)議。 The OAuth 2 sp...
    JacoChan閱讀 4,315評(píng)論 1 11
  • 以下是官網(wǎng)直譯:https://oauth.net/ 1. 首頁(yè) OAuth是一種開(kāi)放協(xié)議(注:協(xié)議是公開(kāi)的,任何...
    JacoChan閱讀 11,761評(píng)論 0 20
  • 1. 引言 如果你開(kāi)車去酒店赴宴,你經(jīng)常會(huì)苦于找不到停車位而耽誤很多時(shí)間。是否有好辦法可以避免這個(gè)問(wèn)題呢?有的,聽(tīng)...
    youseewhat閱讀 1,555評(píng)論 1 5
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,538評(píng)論 19 139
  • 第三方登錄是現(xiàn)在常見(jiàn)的登錄方式,免注冊(cè)且安全方便快捷。 本篇文章將以Github為例,介紹如何在自己的站點(diǎn)添加第三...
    myWsq閱讀 8,254評(píng)論 1 3

友情鏈接更多精彩內(nèi)容