2011-09-19 72 views
0

我有一個在java/jsf中使用richfaces的web應用程序。 而且我必須對我的登錄進行客戶端控制,以便鎖定多個標籤頁登錄。在java/javascript中的瀏覽器選項卡的登錄控制

示例:登錄選項卡時,我無法在同一瀏覽器中的另一選項卡中的同一應用程序中登錄。

有人知道一些框架或什麼是它使?

我試圖自己做,但這個控制是很複雜的,因爲我的JSessionID不會改變新標籤,瀏覽器會話中的所有標籤包含相同的JSessionID。 JavaScript實例不等於所有選項卡,並且我可以保存Cookie來控制它。但是,我的控制力很弱,清理cookie會破壞我所有的代碼安全。

對不起,我可憐的英語...... :)

+0

您無法使用服務器端代碼區分不同的選項卡/窗口。它必須是客戶端的,因此可能會被篡改。 –

+2

您正試圖阻止一種設計中的行爲 - 我非常懷疑您會找到合適的解決方案。您最好的選擇是設計應用程序以允許在同一應用程序中打開多個選項卡。 – scunliffe

回答

1

Cookie對於單個瀏覽器實例是「全局」的。如果他們不是,那麼站點不能(例如)打開單獨的彈出瀏覽器窗口(並且事情正常工作)。

+0

我保存名爲「logged」且值爲「true」的cookie。當我用另一個標籤(在同一個瀏覽器中)登錄時,我驗證了cookie,如果爲true,我阻止登錄。但是,這個解決方案非常薄弱。 –

+2

我同意。爲什麼不簡單地讓瀏覽器按照預期的方式工作? – Pointy

+0

我的應用程序很大。但我會研究這種可能性。 –

相關問題