一尘不染

在JavaScript中将json对象写入文本文件

json

我在javascript中有一个JSON对象。我只想将JSON对象写入文本文件。到目前为止,从我遇到的情况来看,由于客户端的安全问题,无法这样做。有解决方法吗?如果最初放置一些虚拟值,是否可以修改已经存在的文件?

谢谢


阅读 256

收藏
2020-07-27

共1个答案

一尘不染

您可以做的一件事就是将JSON设置为即时下载。

var data = "{name: 'Bob', occupation: 'Plumber'}";
var url = 'data:text/json;charset=utf8,' + encodeURIComponent(data);
window.open(url, '_blank');
window.focus();

工作演示:http :
//jsfiddle.net/sLq3F/

除此之外,由于安全原因,您无法在客户端的文件中写入JSON。(否则,您可以访问网站用户的文件系统。)您将为此使用服务器端语言,并将文件存储在服务器端。


更正: 看起来您可以写入文件,即用户文件系统的“沙盒部分”。请参阅下面的Kevin Jantzer的评论。

另一个更正 :对不起,没有使用Filesystem API。在HTMl5Rocks网站上:“
2014年4月,在公共Web应用程序上宣布应将Filesystem API规范视为已失效。其他浏览器对实现该规范兴趣不大。”

2020-07-27