在一個(gè)域名下面會(huì)有好多個(gè)子域名,每個(gè)子域名對(duì)應(yīng)一個(gè)子系統(tǒng),這些子系統(tǒng)有的是用DJANGO,有的是用Flask等不同的框架開(kāi)發(fā),那麼,我們?nèi)绾卧谶@不同系統(tǒng)間共享登入狀態(tài)?也就是說(shuō),只要在某一個(gè)系統(tǒng)登入了,在使用其他系統(tǒng)的時(shí)候也共享登入的狀態(tài),不需要再登錄,除非登入失效。這樣的話(huà)怎麼做呢?
可以參考:
https://github.com/castlabs/d...
你也可以自己實(shí)現(xiàn):
1、搞一個(gè)用戶(hù)中心(用於帳戶(hù)管理、登入等)
2、存取一個(gè)子系統(tǒng),先判斷是否有token。如果沒(méi)有,或已過(guò)期,則會(huì)自動(dòng)跳到使用者中心。
3、用戶(hù)中心登入成功以後,產(chǎn)生一個(gè)token,並跳轉(zhuǎn)回之前要訪(fǎng)問(wèn)的子系統(tǒng)(帶上token)
4、再訪(fǎng)問(wèn)別的系統(tǒng)時(shí),都需要帶上這個(gè)token。
還有辦法,不需要明確的帶token:用戶(hù)中心登入成功以後,cookie還會(huì)保存登入資訊。造訪(fǎng)各個(gè)子系統(tǒng)(頁(yè)面載入)的時(shí)候,透過(guò)jsonp去使用者中心校驗(yàn)是否已登入:假如使用者中心網(wǎng)域www.a.com,那麼瀏覽器會(huì)快取該網(wǎng)域及其對(duì)應(yīng)的cookie;而jsonp跨網(wǎng)域去請(qǐng)求www.a.com的時(shí)候,會(huì)自動(dòng)帶上這個(gè)cookie的。