資源簡(jiǎn)介
pc端:
1:打開(kāi)二維碼登錄網(wǎng)頁(yè)index.html
2:index.html調(diào)用GetQrCodeServlet
3:GetQrCodeServlet干2件事
a:生成隨機(jī)的uuid,是一個(gè)唯一標(biāo)識(shí),該標(biāo)識(shí)貫穿整個(gè)流程
b:生成二維碼圖片,二維碼信息:http://60.28.201.37:8380/QrCodeLoginPro/Login.html?uuid=" uuid
4:index頁(yè)面展示二維碼
5:index頁(yè)面調(diào)用LongConnectionCheckServlet進(jìn)行長(zhǎng)連接輪詢操作,參數(shù)為uuid
6:LongConnectionCheckServlet只干1件事
a:拿到uuid后循環(huán)檢查loginUserMap中uuid是否不為null。
7:如果為null則代表沒(méi)有登錄,index.html將繼續(xù)進(jìn)行輪詢
ps:
LongConnectionCheckServlet 一個(gè)長(zhǎng)連接請(qǐng)求檢測(cè)登錄狀態(tài)
loginUserMap 是一個(gè)靜態(tài)的map結(jié)構(gòu)的登錄池,uuid為key , 登錄信息為value
手機(jī)端:
1:掃描pc端的二維碼
2:打開(kāi)二維碼中的網(wǎng)頁(yè) http://60.28.201.37:8380/QrCodeLoginPro/Login.html?uuid=" uuid
3:登錄,將uname upwd uuid 傳遞給登錄程序PhoneLoginServlet
4:PhoneLoginServlet干2件事
a:檢測(cè)登錄
b:登錄成功后將登錄信息插入到loginUserMap中去,uuid為key
pc端:
1:繼續(xù)輪詢檢測(cè)uuid中是否為null,
2:登錄后的uuid中就不為null了,此時(shí)LongConnectionCheckServlet停止循環(huán),返回登錄狀態(tài)。
代碼片段和文件信息
-----------?---------??----------?-----??----
?????文件????1080514??2014-04-11?12:06??二維碼登錄例子\二維碼登錄例子\QrCodeLoginPro.rar
?????文件??????20480??2014-02-28?12:48??二維碼登錄例子\二維碼登錄例子\實(shí)現(xiàn)手機(jī)掃描二維碼登錄.ppt
?????目錄??????????0??2014-04-11?12:06??二維碼登錄例子\二維碼登錄例子
?????目錄??????????0??2014-04-11?12:04??二維碼登錄例子
-----------?---------??----------?-----??----
??????????????1100994????????????????????4
評(píng)論
共有 條評(píng)論