javascript - 是否有一种简单易用的方法来使用 fetch 通过 api 接收文件
问题描述
在我正在开发的 Web 应用程序中,用户可以下载文件,这些文件存储在 ftp 服务器上。所以这个想法是
- 用户触发文件下载
- react-redux 前端对 python 后端服务器进行 fetch api 调用,
- 后端服务器从 ftp 服务器中选择正确的文件
- 它加载该文件
- 它使用烧瓶 send_file 将其发回
- react-redux 前端接收文件
- 该文件由用户下载
我已经对如何执行第 7 步进行了相当多的搜索,但这篇文章的答案是“浏览器技术目前不支持直接从 Ajax 请求下载文件。” 我不认为这是一个专门的 Ajax 请求(是吗?),但我没有找到任何解决我的问题的答案,所以我假设浏览器技术可能是没有简单答案的原因。或者有吗?
我希望能找到类似的东西
fetch(window.location.origin + '/api/get-file', {
method: "POST",
body: JSON.stringify(action.docData),
headers: {
Accept': 'application/file',
Content-Type': 'application/file'
},
})
但不是。那么,有没有一种简单的方法可以“预期”您的 api 请求将返回您需要处理的文件?有没有办法避免跳过链接答案所指的所有障碍?
解决方案
推荐阅读
- ruby-on-rails - 如何在 Ruby on Rails 和 ActiveRecord 中聚合深度嵌套属性的所有实例?
- ios - 在 iOS 上,在运行时检索 Swift 包版本号的最佳方法是什么?
- css - 为什么 Edge 浏览器会修剪图像?
- java - 列表视图显示所有项目减去最后一个
- regex - 无法将参数“http://my-sub-domain.page.link”与此 Google 项目中的白名单 URL 模式匹配
- laravel - 如何调整电子邮件中的图像大小?拉拉维尔
- python - 在 python 中使用 pandas 或 dask 高效读取大型 csv 文件
- python-2.7 - 如果我要使用 sys 函数编写脚本但忘记“import sys”,我会得到什么错误?
- python - 将 Pandas 数据框对象保存在字典中
- git - 获取不包含字符的 git 标签