Kzq*_*qai 9 javascript html5 json data-storage local-storage
编辑: 让我试着用一个用例来澄清.我希望能够在html/javascript页面上运行一个简单的聊天框,而无需运行我的服务器.我可以很好地编写聊天应用程序的javascript,但是没有一个允许我存储数据的解决方案,以使所有浏览用户都可以看到聊天消息.因此,我的应用程序将接受数据,将其发布到第三方数据存储(理想情况下只是json格式),并定期从数据存储中轮询更新.这不是我唯一会使用这样的json存储服务/ json存储引擎,但它是最明显的例子.
我正在退出服务器端编程,因为html5走到了最前沿,并探讨了我可以用html和javascript做多少,就我以前用html/php/sql实现的功能而言服务器堆栈.例如,在这个新生的html5网站上:http://tersh.royronalds.com/我正在重复使用flickr进行图像托管,并使用tumblr进行博客帖子托管.然而,就像一个例子,我现在发现自己想要编写一个动态待办事项列表,这些东西可以添加项目并在完成时勾选,并在此期间公开显示.另一个例子可能是一个简单,持久的聊天框.
例如,我不想使用ajax来推送有关聊天消息的布尔数据和文本,而是更改PHP脚本然后将数据存储在mysql数据库中,我很乐意将数据推送到第三方或从第三方提取数据存储提供与localstorage API相同类型的功能,但对于json.
所以我想使用一些公共js API的存储方法来解决这个问题,例如存储json的一些方法,或者真正支持字符串和数字的任何结束格式,并且是可存储和可检索的,类似于localStorage,除了持久和可分享.
这样的事情有哪些公共技术/解决方案?
对此的选择很少,即使它们不是很好或开发得很好。
首先,与服务器端数据库关系最密切的是 Web SQL 数据库。这不是 W3C 推荐的功能(它不使用 SQLite 作为后端),但是目前 Chrome、Opera、Safari 和 Firefox(带有附加组件)支持它。
其次,我们有索引数据库 API。这些仅受 Chrome 和 Firefox 支持。(还有 IE 10,但谁在乎呢?)它与普通数据库有更多不同,但这是 W3C 推荐的方法。
第三,我们有本地存储。这不是一个类似数据库的系统,它更类似于cookie。然而,这些本地存储项比 cookie 更好,因为它们都是一个键值对(我可能会补充说,使用起来非常直观)。例如:
// Store value on the browser permanently
localStorage.setItem('key', 'value');
// Retrieve value
localStorage.getItem('key');
//Remove value
localStorage.removeItem('key');
//This is just a small selection of actions you can perform
Run Code Online (Sandbox Code Playgroud)
第四,您也许应该快速浏览一下离线 HTML。在这个系统中,浏览器会下载站点中的选定文件,并且可以离线使用。我认为这对你没有用,但请检查一下。
正如您可能知道的那样,我在过去两次中比前两次中获得了更多的经验。无论如何,我希望我能有所帮助。