我正在从数据库中检索文件数据,并需要将其发送到前端(我的前端具有下载操作以下载文件)。如何将这些类型的URL转换为文件。我希望可以在任何文件类型(doc、txt、jpg、pdf、zip等)中使用。
"data:text/plain;charset=utf-8;base64,MzQuNjIzNjU..................."
这是我的实现。它对 txt 文件起作用,但由于某些原因它不能处理 jpg 和其他文件类型。有人能帮我找出问题所在吗?(我认为这可能是编码或解码问题)谢谢:)
let mime = file.url.split(',')[0].split(':')[1].split(';')[0];
console.log(mime);
let content = unescape(encodeURIComponent(file.url.split(',')[1]));
content = Buffer.from(content, 'base64').toString();
console.log(content);
let temp = mime + ";charset=UTF-8";
res.set('Content-Type', temp);
res.set('Content-Disposition','attachment; filename=' + file.name );
res.send(content);