1. 程式人生 > >55 同一瀏覽器session會串的問題

55 同一瀏覽器session會串的問題

E6是每新開一個視窗一個session,基本一定不會串

 IE7是同一個窗口裡面多個Tab頁共享一個Session,同窗口的會串

 IE8是所有視窗所有標籤Tab頁共享一個session,除非是用那個檔案選單新開會話開啟視窗則獨立session

 FireFox和Chrome則預設就是所有視窗所有Tab共享一個Session。

所以要解決這個不同帳戶在同一客戶端使用同種瀏覽器同時登入的問題很困難。綜合網上大家討論的方案中,很多不靠譜。但有2中方案應該還走得同:

 第一:泛域名解析。這個需要web伺服器(比如apache)來輔助配置。

 第二:不同帳戶共用一個session,將資訊以<key,value>形式放入session,然後所有的請求都加上userid引數,所有從session中取資料出來都通過get****ByUserId。這種實現對現有框架改動較大,而且不僅僅是放在session中的使用者資訊需要根據byuserid來提取而是所有的會話裡面的資訊都要byuserid的來弄。實在有點殺雞取卵,當作大,收益小。

鑑於上述,目前不支援不同帳戶在同一客戶端使用同種瀏覽器同時登入系統。看以後是否有更好點的解決方案。如果的確有這種需求可以先退出已登入賬戶在登入新賬戶或者開啟兩個不同的瀏覽器登入不同賬戶。