2011-01-25 130 views
2

我想存儲一些數據客戶端。 Cookies是我的第一個傾向,但是他們會收到每一個請求,對嗎?有沒有辦法在沒有傳輸的情況下存儲數據?我不一定要爲每個請求添加10-20k的開銷。是唯一可供選擇的HTML 5 webstorage和有多少瀏覽器採用了它?客戶端本地存儲的數據

+1

Webstorage是自8版本以來在IE中實現的,我相信。 – 2011-01-25 02:51:02

回答

1

不,不是所有Cookie獲得的每個請求發送。您可以檢查cookie是否存在,如果不存在,如果不存在,請閱讀它。對於少量數據,Cookie仍然是一個很好的跨瀏覽器選項。

+0

這值得一些澄清。 Cookie將隨每個請求一起發送,除非您使用無Cookie域來提供靜態文件。 – 2011-01-25 02:56:08

+0

夠公平的。我的意思是說,持有網站偏好等的用戶定義的cookie不會在每個請求中發送。 – Jason 2011-01-25 02:58:47

0

正如你所提到的,cookies是一個選項,HTML5規範中的網絡存儲也是一個選項。此外,還可以使用Flash來存儲數據,同時還可以在同一臺計算機上的多個瀏覽器中保存此數據,但缺點是您需要爲沒有Flash的用戶提供後備功能。個人而言,將數據保存在服務器上(通過會話ID或Cookie標識)是我的方法,您可以控制數據,而不必擔心在用戶清除數據時丟失數據緩存或切換機器/設備。它也是最容錯的,因爲它不依賴於瀏覽器功能和/或插件(可能是cookie)。

還有一件事,如果你正在尋找使用上述所有的客戶端數據存儲的抽象(餅乾,閃存,網絡存儲)檢查Evercookie

1

http://fsojs.com支持強大的文件存儲客戶端 - 但只適用於目前的Chrome瀏覽器