实战教程 node js 实现上传xls文件批量导入到数据库 解析导入
node js 导入excel需要包node_xlsx
var node_xlsx = require('node-xlsx');
上传文件需要引入
const multersss = require('multer');
const uploadsss = multersss();
直接上代码 post请求
router.post('/excelusers',uploadsss.single('uploadFile') ,(req,res)=>{// 1、获取表格信息if(req.file !=undefined && req.file.originalname.indexOf("xlsx")!=-1 ){// 获取上传的文件 并且通过 node_xlsx 进行json转换。let obj = node_xlsx.parse(req.file.buffer)[0].datalet msgs = {msg:"成功",code:"200"}if(obj!=null && obj !=undefined&& obj.length>1){for (let index = 0; index < obj.length; index++) {var element = obj[index];try {//这里判断第一行标题和第二行内容有没有 有的话才往下走 没有直接返回格式不正确或未填写内容if(obj[0]!=undefined && obj[1]!=undefined){try {//这里过滤第一行标题if(index>=1&& element !=undefined && element.length>0 && element[0]!=undefined && element[0]!=""){//打印第一个内容console.log(element[0].trim())}} catch (error) {console.log("抛出异常")}}else{msgs.msg ="上传的Excel 格式不正确或未填写内容, 请重新下载填写上传。";}} catch (error) {msgs.msg="添加失败,上传的Excel不属于模板 或数据异常。";res.send(msgs)}}res.send(msgs)}else{res.send({"msg":"上传无数据或格式错误","code":"200"})}}else{res.send({"msg":"格式错误","code":"200"})}
});
postman请求成功截图