目前我正在我的Arduino上使用Javascript(JQuery和Bootstrap)托管一个简单的HTML网站。现在我想让用户将一个.txt日志文件从Arduino下载到他的brwoser。用户必须单击以下按钮。
<button type="button" onclick="downLog()" class="btn btn-success">Download Log</button>
我知道出于安全原因,Javascript不允许与您的硬盘进行交互。因此,无法在从Ajax调用返回后保存文件。所以我正在考虑从我的Arduino发送正确的标题到我的客户端,以便下载可以开始。
File temp = SD.open("log.txt", FILE_READ);
if(temp) {
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: application/octet-stream");
client.println("Content-Disposition: attachment;");
client.print("Content-Length: ");
client.println(temp.size());
while(temp.available()) {
char a = temp.read();
client.print(a);
}
temp.close();
}
但这似乎不起作用。我从Arduino forum得到了这个,但对我来说它不起作用。有什么想法吗?我测试了连接,我的客户端成功连接到Arduino,文件打开,我的客户端获得成功的响应。但是没有下载开始。
答案 0 :(得分:0)
在我的项目中,我只需连接到arduino的IP地址即可开始下载,直到我写完为止,我无法使其工作:
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/text");
client.println("Content-Disposition: attachment; filename=\"test.txt\"");
client.println("Connection: close");
希望它有所帮助!