2012-02-09 101 views
3

我使用localStorage的這個演示這裏,如何擴展localStorage的

http://help.arcgis.com/en/webapi/javascript/arcgis/demos/exp/exp_webstorage.html

基本上它是一個映射的應用程序,它可以緩存地圖瓦片在localStorage的。

我很快就達到了5MB的限制,從那以後我得到錯誤QUOTA_EXCEEDED_ERR。

如何擴展localStorage?或者我有什麼其他選項可以將數據存儲在客戶端的HTML5中,有沒有人使用過indexdDB,它在Chrome中工作?

http://www.w3.org/TR/IndexedDB/

當然的Web數據庫規範已被棄用,所以我想,以避免同時,

http://www.w3.org/TR/webdatabase/

+0

你可以緩存在內存中嗎?也就是說,保留JavaScript引用的所有數據。除非你需要數據保持持久LocalStorage似乎矯枉過正 – Hubro 2012-02-09 00:14:25

+0

我正在研究一個解決方案,該解決方案可以在可能脫機的移動設備上工作,因此如果用戶計劃離線,則需要持久性。 – peter 2012-02-09 00:15:12

+0

您可以考慮使用HTML5應用程序緩存 - 通過在清單文件中列出每個地圖切片,我們在離線移動應用程序方面取得了一些成功。然而,它更新的方式並不理想,但對於大量的切片,我們現在轉而將切片存儲在IndexedDB中,以便我們可以完全控制同步/更新過程。 – kes 2014-07-17 10:13:41

回答

1

我的理解是,用戶可以擴展的localStorage,但該網站不能(通過設計)。您只需在Javascript中捕獲錯誤並向用戶顯示一個對話框,請求他們增加存儲限制 - 最好爲主要瀏覽器提供一些說明。

編輯:也許不是那麼簡單。似乎有些瀏覽器不允許用戶增加存儲大小。 Google seems convinced the localStorage API doesn't scale well to large files and developers should consider IndexedDB instead