【发布时间】:2011-05-14 03:34:50
【问题描述】:
我正在编写一个 Google Chrome 扩展程序,可让您下载数据的备份文件。我希望用户能够按下一个按钮并打开一个“另存为”对话框,他们可以将文件保存到他们的计算机上。似乎没有任何效果,我还没有在互联网上找到答案。我尝试了几种方法:
- 使用
document.execCommand('SaveAs', null, 'filename.json');这不起作用,因为此命令仅适用于 IE,并且似乎没有 Webkit 替代项 - 使用数据 URI。这是在 Opera 和 Firefox 中最有前途和最有效的方法,但问题是 Chrome 和 Safari 似乎都不支持 URI 中的 Content-disposition=attachment;-header。这应该工作。 (Chrome 甚至不允许我
ctrl/cmd+s来自数据 URI 的页面) - 使用
XMLHTTPRequest。我还没有尝试过,但是必须有某种方式可以转发请求?请注意,我不想使用外部服务器(在这种情况下,我可以简单地发送一个 POST 请求并应用一个 Content-disposition:-header) - 使用可用的 Chrome 扩展 API。但似乎没有任何东西可用于此目的。
我不想使用任何外部服务器的原因是我不想支付托管费用,并且发送的数据可能对用户很敏感,我不想侵犯任何人的隐私。
有人让这个工作吗?
【问题讨论】:
标签: google-chrome webkit google-chrome-extension force-download