2010-11-24 32 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获得会话初始化后,他会使用会话信息更新共享实例,然后释放所有其他线程。

运作良好。

相关问题