掃碼登入的實現原理

2022-07-20 04:42:10 字數 883 閱讀 5042

原理解釋:

接下來就是對於這個服務的詳細實現。首先,大概說一下原理:使用者開啟**的登入頁面的時候,向瀏覽器的伺服器傳送獲取登入***的請求。伺服器收到請求後,隨機生成乙個uuid,將這個id作為key值存入redis伺服器,同時設定乙個過期時間,再過期後,使用者登入***需要進行重新整理重新獲取。同時,將這個key值和本公司的驗證字串合在一起,通過***生成介面,生成乙個***的(***生成,網上有很多現成的介面和原始碼,這裡不再介紹。)然後,將***和uuid一起返回給使用者瀏覽器。

瀏覽器拿到***和uuid後,會每隔一秒向瀏覽器傳送一次,登入是否成功的請求。請求中攜帶有uuid作為當前頁面的識別符號。這裡有的同學就會奇怪了,伺服器只存了個uuid在redis中作為key值,怎麼會有使用者的id資訊呢? 

這裡確實會有使用者的id資訊,這個id資訊是由手機伺服器存入redis中的。具體操作如下:

手機端+伺服器

手機端收到返回後,將登入確認框顯示給使用者(防止使用者誤操作,同時使登入更加人性化)。使用者確認是進行的登入操作後,手機再次傳送請求。伺服器拿到uuid和userid後,將使用者的userid作為value值存入redis中以uuid作為key的鍵值對中。

登入成功

然後,瀏覽器再次傳送請求的時候,瀏覽器端的伺服器就可以得到乙個使用者id,並呼叫登入的方法,聲成乙個瀏覽器端的token,再瀏覽器再次傳送請求的時候,將使用者資訊返回給瀏覽器,登入成功。這裡儲存使用者id而不是直接儲存使用者資訊是因為,手機端的使用者資訊,不一定是和瀏覽器端的使用者資訊完全一致。

掃碼登入原理

網頁端 伺服器 使用者開啟 的登入頁面的時候,向瀏覽器的伺服器傳送獲取登入 的請求。伺服器收到請求後,隨機生成乙個uuid,將這個id作為key值存入redis伺服器,同時設定乙個過期時間,再過期後,使用者登入 需要進行重新整理重新獲取。同時,將這個key值和本公司的驗證字串合在一起,通過 生成介面...

掃碼登入技術原理

下面這張圖,不管是im開發者還是普通使用者,應該很熟悉 下面這張圖,不管是im開發者還是普通使用者,應該很熟悉 幾個主流大廠應用掃碼登入時的介面效果如下 有很多小夥伴可能會感到很神奇,網頁上只是顯示了個 它怎麼就知道是哪個手機掃到了 並且進行登入的呢?而且,登入完成以後,還能直接把使用者資訊顯示給使...

如何使用GoEasy實現掃碼登入

如何使用goeasy實現掃碼登入 你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdown將 片顯示...