2011-02-11 128 views
3

我在Cookie中存储了一些偏好数据。但是,我只注意到这个数据会随着每个请求发送到服务器。有没有办法阻止这种情况发生?有没有办法阻止浏览器发送特定的cookie?

一位朋友放弃了网络存储,但这仍然使IE6/7没有解决方案。

+0

为什么你不能忽略cookie服务器端? – RoToRa 2011-02-11 14:42:36

+0

哦,我这样做,但是这会产生不必要的HTTP流量,因为cookie随每个请求一起发送。该cookie使普通的GET请求比没有它的情况下大5-10倍。 – randomguy 2011-02-11 14:48:45

回答

3

您可以将Cookie设置为仅HTTP(因此支持的浏览器不会让JS访问它们),但不能以其他方式进行。

网络存储是理想的解决方案,但您需要回退到传统浏览器的cookie。

通过将某些内容(特别是图像,CSS和样式表)移动到不同的主机名并将cookie限制为主要主机名,您可以减少包含cookie的请求数。

2

不,没办法改变它。 Cookie数据被发送回每一个请求到同一台服务器,包括对图片,样式表和JavaScript等静态内容的请求。

如果您想加快网站速度并尽量减少服务器带宽,请为您的静态内容使用不同的域名 - 或更好的是,像Rackspace Cloudfiles这样的CDN。 Cookie不会发送到其他域。

祝你好运!

2

适当的解决方案是不要在cookie中存储大量数据。将其存储在您的服务器上,并仅在cookie中存储对该信息的引用(如来自数据库的行标识符)。

相关问题