从跨浏览器cookie中获取值

时间:2011-08-20 06:41:06

标签: php javascript

我们可以从跨浏览器Cookie中获取值吗??? 例如USer可以使用mozilla或chrome或任何其他浏览器

当我们print_r($_COOKIE);

所有浏览器Cookie都会打印。

5 个答案:

答案 0 :(得分:2)

不,cookie仅存储在一个浏览器的缓存中。如果要保存特定于某台计算机的数据,则需要使用Flash对象或服务器端数据库

答案 1 :(得分:1)

您永远无法在浏览器中看到所有Cookie。仅发送到请求的域的目的地。有关Cookie和域策略的详细信息,请参阅here

答案 2 :(得分:0)

所有启用了Cookie的浏览器都会将数据发送到PHP,并添加到$_COOKIE,假设已经设置了Cookie数据...

也就是说,浏览器只会从自身和当前域“提供”cookie数据。它无法读取其他浏览器的cookie,也不会让您从其他网站获取数据。

答案 3 :(得分:0)

目前尚不清楚你在问什么,所以这里有三个答案:

无论访问者使用哪种浏览器,我如何使用Cookie并让它们正常工作?

Cookie是标准。您使用相同的HTTP标头(或JavaScript)为所有浏览器设置它们,并且所有浏览器都以相同的方式将它们发送到服务器。

如何访问我在用户切换浏览器之前设置的Cookie?

当用户访问(例如)Chrome时,您无法读取(例如)Internet Explorer存储的Cookie。 Chrome无法访问Internet Explorer存储的Cookie,因此无法将其发送到服务器。

如何访问其他网站设置的Cookie?

您无法读取为其他域存储的Cookie,因为浏览器只会将属于指定网站的Cookie发送到该网站(否则会需要大量带宽并且是一个严重的安全问题)。

答案 4 :(得分:0)

您的网站可以阅读的唯一Cookie是从同一个域向用户当前浏览器发布的Cookie。

出于安全原因,浏览器只会将cookie信息发送到发布它的同一域。有时,它甚至仅限于特定的子域,而不是对整个站点有效。这是一件非常好的事情,因为cookie信息通常包含会话数据,该会话数据可以(部分或全部)向cookie持有者提供对网站帐户的访问权限。这称为session hijacking。基本上,如果浏览器将所有cookie提供给请求它们的每个站点,则恶意站点所有者可以通过使用该站点的cookie数据向他们请求来接管其他站点上的帐户。

此外,Cookie是用户在创建Cookie时使用的特定浏览器的本地。这就是为什么如果您从Firefox登录您的Facebook帐户,如果您切换到Chrome,则必须再次登录。

简而言之,你要求的是不可能的,而且这是不可能的。