浏览器如何关联在tab中打开的网站的cookie.例如在firefox中我打开了五个标签,在每个标签中我加载了不同的网站.我的问题是浏览器如何识别哪个网站的cookie.它有什么关系.同样,如果我在另一个浏览器实例中打开相同的网站,将使用相同的cookie.
Cookie与标签或窗口无关 - 它们与域的请求有关.每当浏览器向域的Web服务器发出请求时,它对该域的任何cookie都将在请求头中发送.通常会有10个请求为每个网页下载html,图像,javascript等.每个请求都会在请求中发送带有域的cookie.这是一个关于cookie如何工作的好页面,以防您不知道.
如果您有5个选项卡到不同的网页,那么在这些选项卡中对各个不同域进行的请求将具有不同的cookie.如果在所有站点之间共享某些内容(例如图像),则将在所有5个请求中发送相同的cookie.如果您在同一浏览器中的另一个标签页中打开相同的网页,则相同的Cookie将用于该域的请求.
如果你打开另一个浏览器"实例",那么它可能取决于浏览器和你的操作系统.如果cookie是不是一个会话cookie如果cookie存储到磁盘,即,那么当你使用Firefox的另一个实例,它应该读/写相同的cookie文件作为第一个实例.通常,如果您启动另一个浏览器,它可能只是启动当前浏览器的另一个窗口,因此cookie将是相同的.如果您运行两种不同类型的浏览器,那么很可能cookie将是独立的,尽管它们依赖于浏览器是否共享相同的cookie文件.
同样重要的是要了解"隐身窗口"(Chrome)或"私人窗口"(Safari/Firefox)的一个功能是它们有一个单独的cookie空间,当所有私有窗口关闭时它们将被删除.这意味着您可以同时登录两个gmail帐户(例如),因为普通窗口和私有窗口具有不同的cookie集.当您想要测试Web服务并且希望确保具有明确的cookie时,这也非常有用.