手機(jī)登錄微信網(wǎng)頁原理圖(手機(jī)登錄微信網(wǎng)頁原理是什么)
自從二維碼技術(shù)開始普及之后,我們的生活中便隨處可見二維碼。二維碼的確改變了我們的生活,不僅能夠很方便的傳播信息,還能夠?qū)崿F(xiàn)支付、鏈接網(wǎng)站、登錄賬戶等。
今天我們就來聊聊二維碼在“賬戶登陸”這一塊的應(yīng)用以及它背后原理。
下面這個圖相信很多人都很熟悉,這是一個PC網(wǎng)頁版微信的登錄界面,我們只要用手機(jī)掃一下,就可以在電腦上登錄我們自己微信。十分方便,并且很安全。并且我發(fā)現(xiàn)不僅微信,現(xiàn)在的各大網(wǎng)站都有這種登錄方式。
微信網(wǎng)頁版
我們掃一下二維碼,就能登錄自己賬號。
一、思考
你有沒有想過這個過程有點(diǎn)奇怪呢?
1.電腦端是如何知道是哪個微信掃了它呢?
2.掃碼和登陸之間有何聯(lián)系?
3.這種登陸方式安不安全,會不會被盜號。
反正以前我就有這樣的疑惑,讓我們來刨析一下這其中的玄妙。。。
乖乖坐好
二、捋一捋
首先我們先來看看整個工作流程吧。
- 進(jìn)入網(wǎng)站登陸頁面(或是打開客戶端),會顯示一個快速登錄的二維碼。
- 打開手機(jī)上已經(jīng)登錄了我們自己賬號的App,掃掃二維碼確認(rèn)登陸。
- Binggou!電腦端頁面隨之而自動刷新,然后成功登錄。
捋清楚了具體的步驟,然后我們再深入去研究研究其中的奧妙。
三、探一探
實(shí)際上,我們輸入鏈接或者是點(diǎn)擊書簽進(jìn)入一個網(wǎng)站,相當(dāng)于向該網(wǎng)站的服務(wù)器發(fā)送了一個 GET 請求,然后服務(wù)器向我們返回相關(guān)頁面和其他的一些信息,這便是基本的 HTTP 原理。
我們注意到,每次刷新二維碼的時候,頁面上的二維碼都會變化;當(dāng)我們隔一段時間不去掃這個二維碼,這個碼就會失效,需要我們重新獲取二維碼。
解析這個二維碼之后,我們得到了一串鏈接:
微信二維碼解析結(jié)果
前面是微信的域名,后面便是一串沒有規(guī)則的代碼。
沒錯,秘訣就在這串神奇的代碼上!
沉彌在知識的海洋無法自拔
也就是說
- 當(dāng)我們進(jìn)入到登陸頁面,服務(wù)器就會生成一串神秘代碼,并且把它轉(zhuǎn)換成二維碼,展示在我們眼前。
- 當(dāng)我們用手機(jī)掃描時,實(shí)際上就是獲取到了這串代碼。
- 然后我們的手機(jī)便帶著我們的賬號信息和這個神秘代碼再次訪問服務(wù)器。
- 服務(wù)器便回去比對兩次的神秘代碼,如果匹配上了就確認(rèn)了是該用戶想登陸。于是再把我們的信息傳送到電腦網(wǎng)頁上。
就此,我們便成功登陸了上去,沒有輸入帳號密碼,僅靠一個二維碼便完成了登陸。
最后整個過程的簡略流程圖如圖所示:
掃碼登陸簡略流程圖
沒錯,圖中的?UUID?就是我們前面發(fā)現(xiàn)的那串神秘代碼。
四、總結(jié)
看了上述的過程,恍然大悟。原來看起來這么神奇的掃碼登陸,只是后面是我們看不見的服務(wù)器在操控著。
而其實(shí)在實(shí)際的情況下,整個過程還要復(fù)雜很多,其中不僅只有一個服務(wù)器,還需要其他技術(shù)參與,比如 redis數(shù)據(jù)庫、風(fēng)控系統(tǒng)等。
最重要的是這種登陸方法很新奇,很佩服當(dāng)初第一個想到此方法的人~~
好了,今天的文章就分享到這里啦,歡迎大家留言交流。覺得文章不錯歡迎點(diǎn)贊、收藏、關(guān)注 ^_^ 。
這里是 Skyzc,一個 Java&Python 程序員,每天與你分享最新的技術(shù)文章,以及互聯(lián)網(wǎng)資訊,來我主頁一起聊聊吧~
本站部分文章來自網(wǎng)絡(luò)或用戶投稿。涉及到的言論觀點(diǎn)不代表本站立場。閱讀前請查看【免責(zé)聲明】發(fā)布者:愛自由,如若本篇文章侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。本文鏈接:http://m.256680.cn/dnxx/dnjq/131720.html