2010-08-18 104 views
0

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

回答

4

Cookie与标签页或窗口无关 - 它们必须处理对域的请求。只要浏览器向某个域的网络服务器发出请求,它就会为该域所拥有的任何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时,这也是非常有用的。

+0

非常有用的解释,谢谢! – 2017-11-24 20:33:50

相关问题