浏览器如何关联每个选项卡中的网站cookie

时间:2010-08-18 17:18:41

标签: java cookies

浏览器如何关联在tab中打开的网站的cookie。例如在firefox中我打开了五个标签,在每个标签中我加载了不同的网站。我的问题是浏览器如何识别哪个网站的cookie。它有什么关系。同样,如果我在另一个浏览器实例中打开相同的网站,将使用相同的cookie。

1 个答案:

答案 0 :(得分:8)

  

浏览器如何与标签中打开的网站的Cookie相关联。

Cookie与标签页或窗口无关 - 它们与域的请求有关。每当浏览器向域的Web服务器发出请求时,它对该域的任何cookie都将在请求头中发送。通常会有10个请求为每个网页下载HTML,图像,javascript等。每个请求都会在请求中发送带有域的cookie。如果您不知道,这里有一个关于how cookies work的好页面。

如果您有5个标签到不同的网页,那么在这些标签中对各个不同域进行的请求将具有不同的Cookie。如果在所有站点之间共享某些内容(例如图像),则将在所有5个请求中发送相同的cookie。如果您在同一浏览器的另一个标签页中打开相同的网页,则相同的Cookie将用于该域的请求。

如果您打开另一个浏览器“实例”,那么它可能取决于浏览器和您的操作系统。如果cookie a session cookie,即如果cookie存储到磁盘,那么当你运行另一个Firefox实例时,它应该读取/写入与第一个相同的cookie文件实例。通常,如果您启动另一个浏览器,它可能只会启动当前浏览器的另一个窗口,因此Cookie将是相同的。如果您运行两种不同类型的浏览器,那么很可能这些cookie将是独立的,尽管它们依赖于浏览器是否共享相同的cookie文件。

同样重要的是要了解“隐身窗口”(Chrome)或“私人窗口”(Safari / Firefox)的一个功能是它们有一个单独的cookie空间,当所有私有窗口关闭时它们将被删除。这意味着您可以同时登录两个gmail帐户(例如),因为普通窗口和私有窗口具有不同的cookie集。当您想要测试Web服务并且希望确保拥有清晰的cookie时,这也非常有用。