2012-03-15 185 views
8

我最近發現用戶可能會清除HTML5的localStorage值,這讓我很想知道...... localStorage究竟有多持久?如果Flash崩潰並清除了我所有的cookies,是否會丟失我的localStorage數據?如果我的本地緩存被清除以便爲瀏覽器更新打開方案會怎樣?localStorage數據持久性

我見過this answer,但它沒有解決瀏覽器崩潰,更新,緩存清除等問題。localStorage真的是真的永久性的,因爲前面提到的答案似乎是mantain?

回答

8

LocalStorage不是永久的。存儲屬於用戶,因此用戶可以根據需要將其清除。其他網絡應用程序不能混淆它,但用戶可以自由清除它或修改它,如果他們想要的話 - 這是他們的數據,很像屬於本地安裝應用程序的文件受計算機用戶的控制。

此外,LocalStorage可以在空間不足時回收。

您應該將LocalStorage視爲長期緩存,通常會保留在該特定計算機上的特定瀏覽器中,但並不總是存在。任何真正持久的狀態都必須存儲在您自己的服務器上。

如果用戶只是決定切換到另一臺瀏覽器(更不用說新計算機),那麼所有本地存儲在新瀏覽器中將顯示爲空。

1

這當然不是永久性的。你不應該指望它。

除了用戶主動清理存儲的情況之外,他的機器可以重新安裝。或者他可以從另一臺電腦登錄。你的應用程序能夠更好地處理這個問題。