二维码登陆解析
二維碼登陸的背景分析
現(xiàn)在很多網(wǎng)站已經(jīng)不限于賬號(hào)密碼或者手機(jī)號(hào)驗(yàn)證碼的登陸方式了,而第三種登陸方式就是我們的二維碼登錄,這是一種跨服務(wù)的登陸方式,可以簡(jiǎn)單地理解為手機(jī)端的登陸信息跨到瀏覽器端,現(xiàn)在可以很輕松的使用二維碼生成器把我們的各種信息轉(zhuǎn)換為二維碼圖片,包括文本、網(wǎng)址、文件、音視頻等,這里我們就二維碼登陸來講講其具體登陸流程是怎么實(shí)現(xiàn)呢?
二維碼登陸的流程分析
模擬業(yè)務(wù)流程:首先用戶打開網(wǎng)頁,瀏覽器向其服務(wù)器請(qǐng)求登陸二維碼,瀏覽器服務(wù)器收到請(qǐng)求,產(chǎn)生一個(gè)隨機(jī)字符串,并且存入全局會(huì)話redis的key,存儲(chǔ)成功后,字符串和登陸驗(yàn)證接口生成二維碼返回給網(wǎng)頁。網(wǎng)頁得到二維碼,展示給用戶,并且以二維碼中包含的字符串為參數(shù)每秒請(qǐng)求一次服務(wù)器;
用戶方面的話,看到二維碼之后使用手機(jī)進(jìn)行掃碼,將字符串和手機(jī)端的用戶信息傳入登陸校驗(yàn)接口,手機(jī)端服務(wù)器負(fù)責(zé)用戶信息的校驗(yàn),校驗(yàn)通過,通過key為字符串把userid當(dāng)做value存入redis,手機(jī)端服務(wù)器完成任務(wù);
前面攜帶字符串的掃描接口(瀏覽器服務(wù)器)邏輯是按字符串為key去查redis,得到value(userid)查詢用戶信息,內(nèi)部調(diào)用登錄方法,沒問題后生成token返回瀏覽器端,登陸成功。
總結(jié)
二維碼登陸的主要問題是用戶信息跨平臺(tái)的校驗(yàn),一端是手機(jī)端服務(wù)器,一端是瀏覽器端服務(wù)器,所以需要把redis當(dāng)成公共信息交換媒介,手機(jī)端掃描二維碼,手機(jī)端服務(wù)器校驗(yàn)信息后把userid存入redis中,瀏覽器拿字符串每秒請(qǐng)求瀏覽器服務(wù)器,查詢r(jià)edis是否有value,有的話后臺(tái)查詢用戶信息,內(nèi)部調(diào)用登錄方法后返回瀏覽器token,登陸完成。
總結(jié)
- 上一篇: 显示icloud服务器超时,iCloud
- 下一篇: 云桌面和计算机,云桌面和电脑在使用上的差