1. 程式人生 > 實用技巧 >前端上傳檔案和node.js接收

前端上傳檔案和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' }) }); });