2011-02-11 129 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中存儲對該信息的引用(如來自數據庫的行標識符)。

相關問題