前端上传文件和node.js接收
// 读取本地excel文件 function readFromLocalFile(file) { var reader = new FileReader(); reader.onload = function (e) { var dataUrl = e.target.result; uploadTask(file.name, dataUrl); } reader.readAsBinaryString(file); } //上传文件到oss function uploadTask(data, dataUrl){ let taskType = $('#taskType').val(); axios.post('/uploadTask',{ fileName: data, dataUrl: dataUrl, taskType: taskType }).then((res)=>{ console.log(res); }).catch((e)=>{ console.log(e); }) }
以上代码为前端js,使用fileReader将文件读取为二进制字符串。
下面为node.js端取,我用buffer取的,然后存到了oss数据库:
//上传任务页面 router.post('/uploadTask', function (req, res) { // res.render('dataSource/uploadTask', { // session: req.session, // }) let params = req.body; logger.debug(params) let buffer = Buffer.from(params.dataUrl,'binary'); logger.debug(buffer) OssApi.saveFileToOSS(params.fileName, buffer, function(err01, res01){ logger.debug(err01, res01); res.send({ msg: 'ok' }) }); });

浙公网安备 33010602011771号