- 客户端(通过 XMLHttpRequest 请求)-> 服务器。
- 服务器[构建 CSV 并将其打印在响应的输出流上] -> 客户端。
现在第 3 步应该是 -> 客户端的浏览器应该显示一个下载对话框(保存、打开和取消)。由于内容类型是来自服务器的纯文本,并且没有设置内容处置,我们是否可以使用javascript创建一个文件并提示用户下载?
我知道这个问题有点愚蠢。但没有其他选择。我必须这样做。
更改服务器端脚本将使其成为一分钟的任务。但我必须在客户端进行。 XMLHttpRequest 对象的responseText 属性将是纯文本,我必须显示文本文件的下载提示。
这可能吗?
最佳答案
据我所知。但是您可以仅使用 location.href
(或表单,如果需要 POST 数据)来请求服务器端文件。使用正确的 header (Content-Disposition:附件
,我认为还有另一个 header ),您可以下载而不是显示响应。
编辑:更好的是,使用隐藏的iframe
。这样,您仍然可以在主页中执行“正在加载,请稍候”的操作。
关于javascript - Ajax/Javascript - 文件下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13301751/