javascript - 如何在 React 中下载编码资产(任何类型的文件)?
问题描述
在我的 React 应用程序中,我有一个 API 可以通过发送文件 URL 来获取文件。收到文件后,我需要将其作为原始文件下载。这应该适用于任何类型的文件。当我调用 API 时,我从后端获取文件的编码文本。我正在使用react-file-saver模块来下载文件。问题是,模块下载的是文本文件而不是真实文件。
这就是 GET API 响应的样子
IHDRÄõWìã¢sRGB®Îé–eXIfMM*>F(‡iNÄ õASCIIScreenshotÞK| pHYs%%IR$ðÖiTXtXML:com.adobe.xmp<x:xmpmeta xmlns:x="........
这是下载的功能
import { saveAs } from 'file-saver';
downloadFile = (url) => {
API.get(`/main/download?fileUrl=${url}`, { headers: { 'Accept': 'application/*' } })
.then(res => {
var file = new File([res.data], { type: "text/plain;charset=utf-8" });
saveAs(file);
})
.catch((err) => {
console.error("AXIOS ERROR: ", err);
})
}
我该如何解决这个问题?
解决方案
推荐阅读
- batch-file - 通过目录的CMD脚本获取绝对路径
- .net - 输入密码 Blazor 表单
- dataset - 如何将此数据转换为 MIDI 文件?
- google-sheets - 根据其他单元格值从其他工作表中获取值
- java - java创建记事本,换色,换字体,打印,url,超链接
- r - 如何使用 for 循环计算矩阵的行均值
- javascript - 我想将 cmd 输出写入文件而不是标准输出
- android - 在运行时加载开始时更新 WebView 中的内容
- laravel - 如何在 Laravel 中使用共享布局扩展视图?
- java - 如何编写用于向下滚动鼠标操作的 selenium 代码,我将尝试使用下面的代码