如何维护同一页面的不同会话?

时间:2017-08-31 07:34:36

标签: asp.net session web

我需要在两个不同的浏览器标签中打开我的页面并同时处理它们。我在代码中维护了一个会话,其中包含页面中的所有数据。当我尝试在一个选项卡中进行修改时,它会反映在第二个选项卡中。 如何为同一页面实现两个不同的会话?

2 个答案:

答案 0 :(得分:0)

你不能按照你要求的方式去做。每个浏览器都有自己的cookie来与用户建立连接。

你有什么选择。这里的要点是将同一个用户(无论使用什么浏览器)连接到相同的数据。

  1. 您强制用户登录(并且您拥有相同的用户数据库)
  2. 您在网址上使用的某个变量必须在所有浏览器上都相同才能拥有相同的数据。例如,在第一个浏览器上,您有一个类似http://www.test.com?s=123的网址,并要求用户复制粘贴第二个浏览器上的代码,以便能够相互连接。
  3. 在每个案例中,会话都不起作用,并且您需要一些其他数据库来连接这两个数据页。

答案 1 :(得分:0)

浏览器中的标签共享同一组Cookie,其中包括会话Cookie - 因此页面使用相同的会话。

所以你需要找到其他方法来区分这两个标签。

您可以在该页面上使用的网址中添加“tab”参数,并使用一些特定于标签的值。您需要在重定向时在URL中保留该值,不能将其存储在Session或cookie中 然后必须以特定于标签的方式完成处理。

如果仅用于测试,您可以使用“私人标签” - 他们不会将Cookie泄露到常规标签中。但是你不想强迫普通用户使用它。