Javascript 数据记录问题
我在arduino上安装了一个web服务器,并从中加载了网页。我使用ajax打印网页中的数据 同样,我需要将数据作为文本文件存储在本地pc中。我最初成功地存储了一个文本文件,但问题是数据被附加到同一个文件中,每个实例创建了多个文件 有人能帮我解决这个问题吗。我被限制只使用javascriptJavascript 数据记录问题,javascript,html,arduino,Javascript,Html,Arduino,我在arduino上安装了一个web服务器,并从中加载了网页。我使用ajax打印网页中的数据 同样,我需要将数据作为文本文件存储在本地pc中。我最初成功地存储了一个文本文件,但问题是数据被附加到同一个文件中,每个实例创建了多个文件 有人能帮我解决这个问题吗。我被限制只使用javascript client.println(“document.getElementById(\“flux\u values\u 1\”)。innerHTML=this.responseText;”; client.pr
client.println(“document.getElementById(\“flux\u values\u 1\”)。innerHTML=this.responseText;”;
client.println(“var textToSave=[this.responseText]”;
println(“var textToSaveAsBlob=newblob([textToSave],{type:'text/plain'});”;
println(“var textToSaveAsURL=URL.createObjectURL(textToSaveAsBlob);”;
println(“var fileNameToSaveAs=\“as\”;”;
client.println(“var downloadLink=document.createElement(\“a\”);”);
client.println(“downloadLink.download=fileNameToSaveAs;”;
client.println(“downloadLink.href=textToSaveAsURL;”;
client.println(“document.body.appendChild(downloadLink);”;
client.println(“downloadLink.click();”;
实际上,您是在浏览器中下载文件,无法通过浏览器将数据附加到文件中,您必须在后端执行此操作。浏览器将始终创建新文件并下载新文件。这是预期的行为,不能改变 我所看到的唯一可行的解决方案是,使用可以按正确顺序(序号或日期)排序的名称编写文件,然后不时或在需要时将文件连接到PC上。您还可以使用现代浏览器中的Web存储来构建内部缓存,并向其中添加新文本。然后用缓存的文本数据覆盖文件。但是Web存储有一个大约32KB的限制(我不记得正确的值)。最简单的方法是让arduino只传递数据文本。这是由脚本(python、javascript/nodejs、perl、bash或任何您想要的)读取的,然后在您的PC上构建一个web服务器,在web页面上传递这些数据。或者更简单的脚本,从数据创建HTML页面。如果这能解决你的问题。