【技術實現步驟摘要】
本專利技術屬于應用程序,具體涉及一種無感刷新訪問令牌的方法、系統、終端及存儲介質。
技術介紹
1、在前端項目中,為了維持用戶會話的連續性和用戶體驗的流暢性,需要依賴token來驗證用戶身份和授權訪問。然而,token因其設計特性而具有有效期限制,一旦過期,用戶將無法繼續享受服務的某些功能。
2、為了避免用戶服務中斷,目前一些前端采用令牌刷新技術,例如客戶端在接收到服務端返回的訪問令牌失效的提示后,向服務端申請新的訪問令牌。
3、這種方式具有滯后性,在申請新的訪問令牌期間,請求處于等待狀態,無法得到處理。如何縮短或消除等待時間,是提升用戶體驗的關鍵。
技術實現思路
1、針對現有技術的上述不足,本專利技術提供一種無感刷新訪問令牌的方法、系統、終端及存儲介質,以解決上述技術問題。
2、第一方面,本專利技術提供一種無感刷新訪問令牌的方法,包括:
3、獲取待發送請求的目標服務端,并獲取目標服務端的前次請求時間;
4、基于所述前次請求時間和當前時刻計算請求的間隔時間,并基于所述間隔時間是否超過設定的時間閾值判斷待發送請求與前次請求是否屬于同一業務;
5、若所述待發送請求與前次請求屬于同一業務,則獲取訪問令牌的剩余有效期,若所述剩余有效期低于所述時間閾值則向目標服務端發送令牌刷新請求;
6、若所述待發送請求與前次請求不屬于同一業務,則不支持訪問令牌刷新服務。
7、在一個可選的實施方式中,獲取待發送請求
8、截取待發送請求,并從所述待發送請求中提取目標服務端;
9、調用訪問令牌執行所述待發送請求,若所述訪問令牌失效則將所述待發送請求緩存至任務隊列;
10、從歷史訪問記錄中獲取對所述目標服務端的訪問記錄,并從所述訪問記錄中提取距當前時刻最近的前次請求時間。
11、在一個可選的實施方式中,基于所述前次請求時間和當前時刻計算請求間隔時間,并基于所述間隔時間是否超過設定的時間閾值判斷待發送請求與前次請求是否屬于同一業務,包括:
12、計算當前時刻與前次請求時間的時間差,將所述時間差記為間隔時間;
13、判斷所述間隔時間是否超過所述時間閾值:
14、若是,則判定所述待發送請求與前次請求不屬于同一業務;
15、若否,則判定所述待發送請求與前次請求屬于同一業務。
16、在一個可選的實施方式中,所述時間閾值的設置方法包括:
17、收集歷史訪問記錄,并從歷史訪問記錄中的訪問數據提取服務端地址和訪問時間;
18、將服務端地址按訪問時間先后進行排序,得到訪問序列;
19、將訪問序列劃分為多個序列段,所述序列段中僅包含一個服務端地址;
20、統計各序列段的相鄰元素的訪問時間差,并篩選出最大訪問時間差,將最大訪問時間差設置為所述時間閾值。
21、在一個可選的實施方式中,若所述待發送請求與前次請求屬于同一業務,則獲取訪問令牌的剩余有效期,若所述剩余有效期低于所述請求間隔時間則在處理所述待發送請求的同時向目標服務端發送令牌刷新請求,包括:
22、獲取訪問令牌的保存時間以及訪問令牌的有效期,基于所述有效期和所述保存時間計算剩余有效期;
23、若所述剩余有效期為負數,確認所述訪問令牌失效,利用預先存儲的驗證令牌生成令牌刷新請求,并將所述令牌刷新請求發送至目標服務端以獲取新訪問令牌,基于所述新訪問令牌執行所述待發送請求;
24、若所述剩余有效期為正數,且所述剩余有效期不低于所述時間閾值,則基于所述訪問令牌執行所述待發送請求;
25、若所述剩余有效期為正數,且所述剩余有效期低于所述時間閾值,則利用預先存儲的驗證令牌生成令牌刷新請求,以基于所述令牌刷新請求獲取目標服務端的新訪問令牌。
26、在一個可選的實施方式中,所述方法還包括:
27、服務端接收到令牌刷新請求,從所述令牌刷新請求中提取驗證令牌,所述驗證令牌為用戶賬戶的哈希值;
28、預先為將用戶賬戶的哈希值保存至驗證列表,判斷所述驗證列表中是否存在與所述驗證令牌一致的哈希值:
29、若是,則生成新訪問令牌,并將新訪問令牌返回至發送所述令牌刷新請求的客戶端;
30、若否,則返回令牌刷新失敗的提示信息。
31、在一個可選的實施方式中,若所述待發送請求與前次請求不屬于同一業務,則不支持訪問令牌刷新服務,包括:
32、從所述任務隊列中提取待執行任務,基于所述待執行任務跳轉至登錄界面。
33、第二方面,本專利技術提供一種無感刷新訪問令牌的系統,包括:
34、請求監控模塊,用于獲取待發送請求的目標服務端,并獲取目標服務端的前次請求時間;
35、關聯分析模塊,用于基于所述前次請求時間和當前時刻計算請求的間隔時間,并基于所述間隔時間是否超過設定的時間閾值判斷待發送請求與前次請求是否屬于同一業務;
36、令牌刷新模塊,用于若所述待發送請求與前次請求屬于同一業務,則獲取訪問令牌的剩余有效期,若所述剩余有效期低于所述時間閾值則向目標服務端發送令牌刷新請求;
37、登錄跳轉模塊,用于若所述待發送請求與前次請求不屬于同一業務,則不支持訪問令牌刷新服務。
38、第三方面,提供一種終端,包括:
39、存儲器,用于存儲無感刷新訪問令牌的程序;
40、處理器,用于執行所述無感刷新訪問令牌的程序時實現如第一方面提供的無感刷新訪問令牌的方法的步驟。
41、第四方面,提供了一種計算機可讀存儲介質,存儲介質上存儲有無感刷新訪問令牌的程序,無感刷新訪問令牌的程序被處理器執行時實現如第一方面提供的無感刷新訪問令牌的方法的步驟。
42、本專利技術的有益效果在于,本專利技術提供的無感刷新訪問令牌的方法、系統、終端及存儲介質,通過監控訪問令牌的剩余有效期,并監控請求間隔時間,進而基于請求間隔時間和剩余有效期判斷是否需要提前刷新訪問令牌,這種提前刷新訪問令牌的方式不會造成請求長時間等待,進一步提升了用戶使用體驗。
43、此外,本專利技術設計原理可靠,結構簡單,具有非常廣泛的應用前景。
本文檔來自技高網...【技術保護點】
1.一種無感刷新訪問令牌的方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,獲取待發送請求的目標服務端,并獲取目標服務端的前次請求時間,包括:
3.根據權利要求1所述的方法,其特征在于,基于所述前次請求時間和當前時刻計算請求間隔時間,并基于所述間隔時間是否超過設定的時間閾值判斷待發送請求與前次請求是否屬于同一業務,包括:
4.根據權利要求1所述的方法,其特征在于,所述時間閾值的設置方法包括:
5.根據權利要求1所述的方法,其特征在于,若所述待發送請求與前次請求屬于同一業務,則獲取訪問令牌的剩余有效期,若所述剩余有效期低于所述請求間隔時間則在處理所述待發送請求的同時向目標服務端發送令牌刷新請求,包括:
6.根據權利要求5所述的方法,其特征在于,所述方法還包括:
7.根據權利要求2所述的方法,其特征在于,若所述待發送請求與前次請求不屬于同一業務,則不支持訪問令牌刷新服務,包括:
8.一種無感刷新訪問令牌的系統,其特征在于,包括:
9.一種終端,其特征在于,包括:
< ...【技術特征摘要】
1.一種無感刷新訪問令牌的方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,獲取待發送請求的目標服務端,并獲取目標服務端的前次請求時間,包括:
3.根據權利要求1所述的方法,其特征在于,基于所述前次請求時間和當前時刻計算請求間隔時間,并基于所述間隔時間是否超過設定的時間閾值判斷待發送請求與前次請求是否屬于同一業務,包括:
4.根據權利要求1所述的方法,其特征在于,所述時間閾值的設置方法包括:
5.根據權利要求1所述的方法,其特征在于,若所述待發送請求與前次請求屬于同一業務,則獲取訪問令牌的剩余有效期,若所述剩余有效期低于所述請求間隔...
【專利技術屬性】
技術研發人員:王文利,修志遠,王茂帥,李洪生,
申請(專利權)人:山東浪潮超高清視頻產業有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。