问题描述
我想使用nodejs将base64音频文件上传到minio对象存储中,我已经具有上传图像的功能,但是对于上传音频文件,我应该替换什么?我关心的是仅用于图像的ba64模块
谢谢
const fs = require('fs');
const ba64 = require('ba64');
const minio = require('./minio');
const wrapper = require('../../utils/wrapper');
const uploadImages = async (bucket,rawImg,objName) => {
const rand = Math.floor(Math.random() * 1000);
const path = `./uploads/${objName.filename}-${rand}`;
let data_url;
const ext = rawImg.substring('data:image/'.length,rawImg.indexOf(';base64'));
switch (ext) {
case 'png':
data_url = `data:image/png${rawImg}`;
break;
case 'jpg':
data_url = `data:image/jpg${rawImg}`;
break;
case 'jpeg':
data_url = `data:image/jpeg${rawImg}`;
break;
}
ba64.writeImageSync(path,data_url);
const key = `${objName.folder}/${objName.filename}-${rand}.${ext}`;
const images = fs.createReadStream(`./uploads/${objName.filename}-${rand}.${ext}`);
const upload = await minio.objectUpload(bucket,key,images.path);
fs.unlinkSync(`./uploads/${objName.filename}-${rand}.${ext}`);
if (upload.err) {
return wrapper.error('err');
}
return key;
};
module.exports = {
uploadImages
};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)