首頁  >  文章  >  後端開發  >  javascript - web掃碼登入怎麼實現,求個思路

javascript - web掃碼登入怎麼實現,求個思路

WBOY
WBOY原創
2016-09-23 11:31:041635瀏覽

最近在弄一個web即時通訊,裡面有一個掃碼登入功能。以前沒做過,求有方面的高手談談。
如二維碼怎麼來的,web端如果監聽手機掃碼成功,並服務端發送過資料

回覆內容:

最近在弄一個web即時通訊,裡面有一個掃碼登入功能。以前沒做過,求有方面的高手談談。
如二維碼怎麼來的,web端如果監聽手機掃碼成功,並服務端發送過資料

<code>步骤       WEB平台                手机
第1步      生成二维码
第2步     (ajax监控后台)          扫码
第3步     (ajax监控后台)          确定(后台异步通知WEB平台)
第4步      AJAX发现状态改变,登陆成功
</code>

ajax監控後台的流程:產生二維碼後,

<code>setTimeout(function(){
    //AJAX请求,检测状态
},5000);


</code>

樓上說的很正確。我補充一下吧。
以微信為例
解決兩個問題,電腦從伺服器取得是否有人掃了我這台電腦,並且授權登入。
然後app,要解決的是掃了之後,知道掃的人是誰,把這個人資訊告訴給伺服器。
物件網址 手機開啟微信

流程
web生成鏈接,鏈接製成二維碼,一般用本地的cookies或者sessionid作為唯一表示的參數。

app掃完之後,其實是進行授權操作,抓取用戶信息,把用戶信息跟請求中包含的cookies或者sessionid存到庫裡面
web每隔幾秒ajax請求後台,查詢當前cookies或sessionid是否有對應的登入訊息,有則進行登入操作。

1.前端呼叫後台產生二維碼的API,取得到二維碼圖片和所包含的資訊(通常是一個唯一ID)
2.前端偵測(透過輪詢或websock,自己選擇)是否有手機掃碼,透過呼叫後台介面API,參數為上面的唯一ID
3.手機掃描二維碼登陸,手機端可以獲取到二維碼裡的信息ID,帶上當前登陸用戶ID和二維碼裡的ID呼叫後台介面。
後台儲存這個二維碼的數據,加上登入使用者訊息,當前台呼叫API時,給返回登入成功。
4.前端取得到登入成功,進行跳轉

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn