文章詳情頁
flask - python web中如何共享登錄狀態?
瀏覽:253日期:2022-06-26 17:57:33
問題描述
在一個域名下面會有好多個子域名,每個子域名對應一個子系統,這些子系統有的是用DJANGO,有的是用Flask等不同的框架開發,那么,我們如何在這不同系統間共享登錄狀態?也就是說,只要在某一個系統登錄了,在使用其他系統的時候也共享著登錄的狀態,不需要再次登錄,除非登錄失效。這樣的話要怎么做呢?
問題解答
回答1:看看什么叫單點登錄
回答2:可以參考:https://github.com/castlabs/d...
你也可以自己實現:1、搞一個用戶中心(用于賬戶管理、登錄等)2、訪問一個子系統,先判斷是否有token。如果沒有,或者已過期,則自動跳轉到用戶中心。3、用戶中心登錄成功以后,生成一個token,并跳轉回之前要訪問的子系統(帶上token)4、再訪問別的系統時,都需要帶上這個token。
還有個辦法,不需要顯式的帶token:用戶中心登錄成功以后,cookie還保存登錄信息。訪問各個子系統(頁面加載)的時候,通過jsonp去用戶中心校驗是否已登錄:假如用戶中心域名www.a.com,那么瀏覽器會緩存該域名及其對應的cookie;而jsonp跨域去請求www.a.com的時候,會自動帶上這個cookie的。
相關文章:
1. node.js - mongodb查找子對象的名稱為某個值的對象的方法2. javascript - QQ第三方登錄的問題3. 測試自動化html元素選擇器元素ID或DataAttribute [關閉]4. 運行python程序時出現“應用程序發生異常”的內存錯誤?5. spring-mvc - spring-session-redis HttpSessionListener失效6. 在mac下出現了兩個docker環境7. 利用IPMI遠程安裝centos報錯!8. mysql - 查詢 修改數據庫優化問題吧9. 正在使用electron和node.js做桌面應用,需要實時監聽是否有網絡連接,node或者electron是否可以做到10. java - Spring boot 讀取 放在 jar 包外的,log4j 配置文件,系統有創建日志文件,不寫入日志信息。
排行榜

網公網安備