這期內容當中小編將會給大家?guī)碛嘘P利用vue實現(xiàn)微博第三方登錄的方法,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務江漢,十余年網(wǎng)站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:189808205751.微博三方登錄流程
1.1 前端獲取認證code
1.在Vue頁面加載時 動態(tài)發(fā)送請求獲取微博授權url
2.django收到請求的url后,通過微博 應用ID(client_id)和回調地址(redirect_uri) 動態(tài) 生成授權url返回給Vue
3.當用戶點擊上面的url進行掃碼,授權成功會 跳轉我們的回調界面并附加code參數(shù)
4.Vue獲取到微博返回的code后,會 將code發(fā)送給django后端 (上面的redirect_uri)
1.2 獲取微博access_token
后端獲取code后,結合client_id、client_secret、redirect_uri參數(shù)進行傳遞,獲取微博access_token
1.3 獲取微博用戶基本信息并保存到數(shù)據(jù)庫
使用獲得的access_token調用獲取用戶基本信息的接口, 獲取用戶第三方平臺的基本信息
用戶基本信息 保存到數(shù)據(jù)庫,然后關聯(lián)本地用戶 ,然后將用戶信息返回給前端
1.4 生成token給Vue
django后端借助微博認證成功后,可以 使用JWT生成token ,返回給Vue
Vue將token存儲到localStorage中 ,以便用戶訪問其他頁面進行身份驗證
2.第三方登錄與本地登錄的關聯(lián)(三種情況)
2.1 情況1: 本地未登錄,第一次登錄第三方
此時相當于注冊,直接把第三方信息拉取來并注冊成本地用戶就可以了,并建立本地用戶與第三方用戶
(openid)的綁定關系
2.2 情況2:本地未登錄,再次登錄第三方
此時用戶已注冊,獲取到openid后直接找出對應的本地用戶即可
2.3 情況3:本地登錄,并綁定第三方
這個只要將獲取到的openid綁定到本地用戶就可以了
3.oauth認證原理
OAuth是一個開放標準,允許用戶讓第三方應用訪問該用戶在某一網(wǎng)站上存儲的私密的資源,而無需將用戶名和密碼提供給第三方應用。
OAuth允許用戶提供一個令牌,而不是用戶名和密碼來訪問他們存放在特定服務提供者的數(shù)據(jù)。這個code如果能出三方換取到數(shù)據(jù)就證明這個用戶是三方真實的用戶
4.為什么使用三方登錄
服務方希望用戶注冊, 而用戶懶得填注冊時的各種信息(主要是為了保證用戶的性,各種用戶名已占用,密碼格式限制).
而像微信, QQ, 微博等幾乎每個人都會安裝的應用中用戶肯定會在其中某一個應用中已經注冊過,證明該用戶在已經注冊的應用中的性.
第三方登錄的實質就是在授權時獲得第三方應用提供的代表了用戶在第三方應用中的性的openid.并將openid儲存在第三方服務控制的本地儲存.
上述就是小編為大家分享的利用vue實現(xiàn)微博第三方登錄的方法了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。