2010-11-24 69 views
0

我有一個要求,即在一個頁面上有多個iframe,並且所有iframe都相互交互。我們的應用程序佈局方式要求這些iframe在同一個會話中運行,以便與其他人分享有關所選內容等的數據。在同一域中的2個iframe中加載同一個會話

問題出在第一頁加載時,兩個iframe加載一個URL,這顯然在請求中不會有會話cookie。因此,兩個iframe都會創建一個新會話並將其數據放入其中。然而,他們都會發送他們的會話cookie,最後一個請求會覆蓋之前的請求。從那裏,兩個iframe使用相同的會話,但只有最後加載的iframe具有有效的會話數據。

如果我刷新「容器」頁面,一切正常(因爲會話cookie有效)。

不幸的是,由於「容器」應用程序的限制,我們無法指定明確的加載順序。已經認爲解決的......

+0

您是否有任何可將會話鏈接在一起的數據?可能是用戶ID或IP(如果是內部應用程序)。 – David 2010-11-24 23:27:02

回答

0

所以我得到這個工作了(我真的應該張貼這像一年前)...

基本上當用戶加載頁面,我保證會cookie與當前正在執行的請求相同。因此,在特定用戶的#1請求中,我只是照常進行,除非我記下該用戶有請求。

#1進來的任何請求仍然在OnBeginRequest中進行,直到#1已經初始化會話。當#1獲得會話初始化後,他會使用會話信息更新共享實例,然後釋放所有其他線程。

運作良好。

相關問題