在我的演示中,我想避免使用传统的数据库并将所有数据存储在客户端,例如通过表格提交的信息。
我有什么替代方案。我听说过Gears,但我没有任何实际经验。
除了字符串之外,我还可以存储二进制信息,例如一个图像?
答案 0 :(得分:5)
您可以查看YUI's StorageUtility。它可以在后备的基础上使用HTML 5,Google Gears或SWF。
答案 1 :(得分:1)
我担心你的选择有限。
答案 2 :(得分:1)
Cookie是支持跨浏览器的最受支持的方式。我已经开源了一个小型库,用于通过本地javascript对象通过Cookies获取和保存数据。
http://code.google.com/p/mapbug/source/browse/trunk/app/scripts/cookies.js
欢迎您复制并按照您认为合适的方式使用。如果你原样使用它,你还需要这个javascript命名空间隔离代码:
http://code.google.com/p/mapbug/source/browse/trunk/app/scripts/namespace.js
如果您拥有大量数据,则必须在许多不同的Cookie中分发数据。您通常可以依靠每个cookie最多可以保存4K数据。
答案 3 :(得分:1)
正如Andy所说,YUI StorageUtility是一个很好的抽象。 Dojo有一个类似的抽象dojox.storage,它也适用于一些旧的浏览器。如果您的数据量是< 100 KB,那么您可以轻松使用Flash。仔细考虑使用HTTP cookie,因为它们不仅尺寸有限,而且通过网络发送,这可能是也可能不是。
答案 4 :(得分:0)
我有一个非常简单的演示来测试HTML5的webstorage / localstorage。
http://www.codebase.es/test/webstorage.html
您可以存储您想要的任何内容,而不仅仅是字符串。要存储图像,请将图像复制到画布并使用toDataURL()方法保存数据。
但是不要指望它能在IE上运行......