我想使用jQuery将数据推送到外部本地JSON文件中的数组。
所有想法?
我试过这个:
$.getJSON('test.json', function(data) {
data.push('Something');
});
它不会被推送到本地JSON文件
答案 0 :(得分:0)
无法使用Javascript编写文件(可能会因xss,csrf而导致安全问题..)
不,JavaScript无权访问写文件,因为这将是一个巨大的问题 安全风险至少可以说。如果您想获取/存储信息服务器 - 但是,您可以对PHP / ASP / Python /等进行Ajax调用。 然后可以在服务器中获取/存储数据的脚本。如果你的意思是商店数据 在客户端计算机上,仅使用JavaScript是不可能的。我猜测 Flash / Java可能会,但我不确定。
如果您只是想为一个存储少量信息 靠不住 关于特定用户的一段时间,我想你想要cookies。我不是 但是,从你的问题中确定你想要完成什么。
答案 1 :(得分:0)
您可以使用node.js(或multitude of other languages/platforms)在JavaScript中执行此操作,但不能使用浏览器& jQuery的。
以下是read and write a json file in node.js
的方法另一方面,用户可以将JSON文件上传到您的服务器,您可以在其中修改结构并将其作为下载文件发送回修改后的JSON文件。
答案 2 :(得分:0)
您无法访问本地客户端计算机中的文件。可以用于开发设置,你可以做到。但在您需要重置浏览器并设置file-access
标志之前。
你can see my answer here描述了设置标志的开放式浏览器设置。
然后,您可以使用以下代码来读取数据。
var data = [];
var url = "/Users/Vignesh/Desktop/test.json";
var req = new XMLHttpRequest();
req.open("GET",url,true);
req.onreadystatechange=function(){
if(req.readyState === 4)
{
data = JSON.parse(req.responseText);
}
};
req.send();
要写入文件,您可以look into this。 (不确定它是否正常工作)