我想向AJAX
请求来自服务器的某些数据GET
。然后我想提示客户端将这些数据保存在他/她的计算机上,以便以后可以在浏览器会话之外访问它。使用JavaScript可以实现这种保存功能,还是需要使用Flash库?我可以使用URI在本地执行此操作吗?我可以使用HTML5的本地存储吗?
答案 0 :(得分:0)
一旦数据在客户端,Javascript就无法在没有像Flash这样的插件的情况下将其保存在本地。 HTML5具有download
属性,可解决所有这些问题,但它几乎没有支持 [2013-03-02] 。
相反,您可以做的是在客户端上构建数据,然后将数据作为文件保存在服务器上,以便作为附件直接下载。您需要使用HTTP标头Content-Disposition
来执行此操作。
以下是PHP中的一个示例。
<?php
header('Content-Type: text/plain');
header('Content-Disposition: attachment; filename=data');
echo $_POST['data'];?>
<!-- language: lang-html -->
<form action="http://thinkingstiff.com/stackoverflow/download.php" method="POST">
Data to save: <input name="data" type="text" />
<button>download</button>
</form>