我们可以从跨浏览器Cookie中获取值吗??? 例如USer可以使用mozilla或chrome或任何其他浏览器
当我们print_r($_COOKIE);
所有浏览器Cookie都会打印。
答案 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,则必须再次登录。
简而言之,你要求的是不可能的,而且这是不可能的。