时间:2011-07-26 09:59:50

标签: google-chrome-extension

我正在寻找在Web应用程序中使用基于文件系统的数据存储的最佳方法。

基本上,我正在开发Google Chrome扩展程序,它实际上是基于内容脚本的。其功能如下:

  1. 该扩展程序是一个基于内容脚本的扩展程序,它将针对每个网页用户访问进行触发。

  2. 扩展程序将从跨浏览器位置(JSON格式)的数据库中连续(每5/10秒)获取一些数据,并在每个网页上以自动收报机的形式显示该数据。内容脚本将修改网页的DOM以显示自动收报机。

  3. 对于上述方案,我注意到一个事实,即连续获取数据会增加服务器和客户端的带宽消耗。因此,我正在计划一种方法来维护文件系统中的数据,该文件系统将仅捆绑在扩展中,并将在本地访问以避免带宽消耗。

    我可以维护的文件系统是文本,CSV甚至XML。但问题是我需要通过Javascript,JQuery或AJAX读取数据文件。所有这些语言都没有高效的文件处理和文件访问机制。

    任何人都可以建议采用文件访问机制解决上述问题的最佳解决方案吗?

    另外,如果您可以建议除基于文件系统的数据存储之外的全新方法,那对我来说真的很有帮助。

2 个答案:

答案 0 :(得分:1)

如果您只需要从文件中读取一些数据,那么您可以使用扩展名捆绑这些文件。

在这些文件中存储数据的格式 - 我可以想到3个选项:

  • 您可以通过XMLHttpRequest读取XML文件并使用jQuery解析它们。您可以使用所有jquery选择器轻松而强大。
  • 您可以以JSON格式存储数据,以相同的方式阅读,并使用JSON.parse()
  • 解析它
  • 您可以直接从您的数据中制作javascript对象,只需通过<script src="local.js">标记将此文件包含在您的背景页面中即可。所以你的local.js看起来像这样:

    var data = [{obj1: "value1"}, ...];

答案 1 :(得分:-1)

我已经使用XML多年了 - 基于微软的建议,说小容量网站可以做到这一点。 但XML几乎总是加载所有文档 - 因此其大小将影响性能。 三年前我在不同的浏览器中做了一些+40.000个节点而且很奇怪 - ms似乎是可以处理这个的:) 和AJAX是为了传输XML而创建的