【问题标题】:Read/write json from js to file on server (not server app)从 js 读取/写入 json 到服务器上的文件(不是服务器应用程序)
【发布时间】:2011-01-30 02:15:06
【问题描述】:

我正在使用 .js 客户端,并且我需要将对象写入服务器上的文件。几个问题 - 使用 JavaScript 的文件 i/o 对我来说是新的......我打算使用 jquery 和 json。我正在使用java服务器端。我在读取从 servlet 返回的内容时没有问题,但是文件 i/o 正在杀死我!几个问题:

  1. 我可以通过 $.ajax 调用打开我自己通过 .js 生成的文件,但它没有处理我的 json 语法(我尝试了 $.getJson 和 $.ajax - 手写 json,所以我可能(可能)做错了什么)。我用了firebug的控制台,看起来还不错……

  2. 如何将我的对象写入服务器上的文件?

  3. 那么,当我想阅读它时,我需要做什么来处理它?现在我正在使用 jsonFilter 函数(如果可用,则使用 JSON.parse,否则使用 eval)来处理我从 servlet 获取的数据。

  4. 我正在编写的对象并不简单,但也不是超级复杂。有一个数组包含一个数组,但如果软件同时读取/写入它,那应该不会有什么不同。

感谢您的帮助!我不知所措 - 尝试了很多不同的东西。

【问题讨论】:

    标签: javascript jquery json file-io


    【解决方案1】:
    1. 您可以通过查询文件并将其加载到 JSON 对象中,通过 ajax 打开位于服务器上的文件。你可能想LINT你的 JSON

    2. 您不能通过客户端写入服务器上的对象。这是一个严重的安全漏洞。 常见的做法是更改 JSON 数据,然后通过 ajax 将其发送到服务器端代码。然后服务器会做文件 IO。

    3. 是的,使用 JSON.parse 否则 eval 确实是正确的。我会推荐json2.js

    4. 只要通过 JSONLint,数据应该没问题。

    您的主要问题是无法从客户端写入服务器。让客户端通过ajax加载数据,修改后查询服务器更新文件。

    【讨论】:

    • 谢谢 - 这就是我出错的地方。我将在我的 servlet 中添加一些代码来写出文件。我以为我可以直接 ajax 到文件中。
    【解决方案2】:

    js 没有 i/o 属性;

    你应该使用 ajax 或 http 请求向服务器发送消息,并告诉服务器执行 de i/o 操作...

    【讨论】:

      猜你喜欢
      • 2022-01-03
      • 2012-05-05
      • 1970-01-01
      • 2013-10-03
      • 2020-01-23
      • 2013-11-09
      • 2011-11-02
      • 1970-01-01
      • 2011-10-30
      相关资源
      最近更新 更多