Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在ASP.NET中打开具有新会话ID的新浏览器窗口_.net_Asp.net_Session_Cookies - Fatal编程技术网

在ASP.NET中打开具有新会话ID的新浏览器窗口

在ASP.NET中打开具有新会话ID的新浏览器窗口,.net,asp.net,session,cookies,.net,Asp.net,Session,Cookies,我需要打开第二个浏览器窗口或选项卡,但它必须具有不同的会话ID 从ASP.NET页面打开新的浏览器窗口很容易,但随后它会与原始页面共享相同的cookie,从而会话ID 我该怎么做 我认为没有办法做到这一点,因为Cookie存储在浏览器级别——不管你打开多少窗口,你仍然会有相同的Cookie,因此也会有相同的会话 我不确定,如果你使用的话,也许这是可能的,尽管无cookieless会话路线有很多缺点 编辑:根据您的情况,实现您想要实现的目标的一种方法可能是使用多个不同的域名/URL,这些域名/UR

我需要打开第二个浏览器窗口或选项卡,但它必须具有不同的
会话ID

从ASP.NET页面打开新的浏览器窗口很容易,但随后它会与原始页面共享相同的cookie,从而
会话ID


我该怎么做

我认为没有办法做到这一点,因为Cookie存储在浏览器级别——不管你打开多少窗口,你仍然会有相同的Cookie,因此也会有相同的会话

我不确定,如果你使用的话,也许这是可能的,尽管无cookieless会话路线有很多缺点


编辑:根据您的情况,实现您想要实现的目标的一种方法可能是使用多个不同的域名/URL,这些域名/URL都指向同一个ASP.NET站点,这将允许您将cookie和会话分开。但是如果每个浏览器需要2到3个以上的会话,那就太傻了

这是一个浏览器限制-浏览器实例在运行时共享cookie数据(包括会话cookie),因此这在标准浏览器中是不可能的

如果您可以选择运行不同的浏览器(例如IE和Firefox),它们不会共享cookie,并且会有不同的会话

编辑:

如果您可以控制环境中的IIS主机头和DNS,则可以使用许多不同的域名-每个会话一个


浏览器会将每个域名视为不同的服务器,并创建不同的cookie(因此会创建会话)。

在IE中,您必须使用文件-新建会话,或者可以为选项卡/会话设置注册表项。您的选项卡将更改颜色,显示您正在使用的会话

是的,我知道这一点,但它有什么缺点。当我在打开新窗口时将域更改为ip地址时,它确实会给我第二个会话,这很酷,但我仅限于两个会话。一定有更好的方法来解决这个问题。@Daniel:您可以设置IIS,以便使用
a.domainname.com
b.domainname.com
c.domainname.com
,等等。这样你就有了无限的会话。是的,但这有点极端,肯定有客户端解决方案problem@Daniel-互联网基础设施的根本性改变或浏览器代码库的大规模改变……不,是it遗留系统,因此,我无法将该站点更改为运行CookieelesSjip,该站点的多个不同URL确实允许我创建新会话,但其限制Cookieeless会话使会话固定攻击变得更容易,特别是在asp.net中,您无法在登录时手动创建新会话nope,你不能要求每个人都去更改他们的注册表设置,如果你在像我这样的公司环境中工作,你会怀疑很多人甚至知道如何去做。IT部门会自动进行此更改-因此这是基于intranet的应用程序的一个好解决方案。我的问题被重新表述了??不用担心,但仍在寻找答案。这一定是可能的,任何浏览器都有一个非常愚蠢的限制Daniel,我认为除了已经提出的解决方案之外,你不会得到更多的解决方案。每个浏览器一个会话/cookie对于当今大多数浏览器的工作方式来说是非常基本的。也许试着想想另一种方法来实现你正在做的事情。换句话说,为什么你需要新的浏览器窗口有一个不同的会话,你能解决这个问题吗?