javascript - 使用 JS、jQuery,如何将 AJAX 响应保存到(文本)文件?

标签 javascript jquery ajax django csv

似乎这个问题是定期被问到的,常见的回答是“无论如何你都不应该用 AJAX 这样做。只需将窗口位置设置为文件。”

但我正在尝试请求一个实际上不存在于服务器上任何地方的文件。给定 GET/POST 上下文参数,它是动态生成的(通过 Django View )。我想通过 AJAX 检索然后保存到客户端计算机的文件是一个文本文件 (csv)。

我目前可以将文本发送到客户端计算机(并且可以通过在日志记录或警报中查看它来验证这一点)但是无法确定如何将此文本保存到 AJAX 成功回调 fn 内的文件中。

本质上,这可能吗,是不是JS能做到的?也就是说,要为实际上是 AJAX 响应文本的"file"打开文件保存对话框?

最佳答案

从浏览器的 Angular 来看,文件是否存在并不重要,它只是它请求的服务器上的资源。我认为您将需要执行某些版本的“只需将窗口位置设置为文件”。如果您将 header 中的内容类型设置为浏览器无法识别的内容,我相信它会询问用户是否要保存它。

关于javascript - 使用 JS、jQuery,如何将 AJAX 响应保存到(文本)文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3632094/

相关文章:

javascript - HTML/CSS 绝对位置子项不会随绝对位置父项一起移动

javascript - 如何通过单击 html 表格中的按钮来设置类

javascript - 无法在 owl-carousel 选项数组中写入 var 值

javascript - JS HTML 5 - 无法集成示例代码 - 帮助

javascript - 如何将 1 添加到 javaScript 变量?

ruby-on-rails - Rails Ajax Jquery 删除之后提交 Post 请求

javascript - Tampermonkey:在动态 AJAX 页面上按下按钮时复制源代码

javascript - 在图表中使用 ajax 响应值

javascript - 滚动时淡出页面顶部和底部的文本(使用 jQuery)

javascript - 为 jQuery 选项卡动态创建 html