Node+express+multer 解决保存文件路径、获取文件信息、响应编码

半城伤御伤魂 提交于 2019-12-30 17:34:43

先引用fs、multer。 

let express = require('express');
let multer = require('multer');
let fs = require('fs');
let path = require("path");
let router = express.Router();

router.post('/', multer({
  //设置文件存储路径
  dest: 'upload'   //upload文件如果不存在则会自己创建一个。
}).single('file'), function (req, res, next) {
  if (req.file.length === 0) {  //判断一下文件是否存在,也可以在前端代码中进行判断。
    res.render("error", {message: "上传文件不能为空!"});
    return
  } else {
    let file = req.file;
    let fileInfo = {};
    console.log(file);
    fs.renameSync('./upload/' + file.filename, './upload/' + file.originalname);//这里修改文件名字,比较随意。
    // 获取文件信息
    fileInfo.mimetype = file.mimetype;
    fileInfo.originalname = file.originalname;
    fileInfo.size = file.size;
    fileInfo.path = file.path;

    // 设置响应类型及编码
    res.set({
      'content-type': 'application/json; charset=utf-8'
    });

    res.end("上传成功!");
  }
});
module.exports = router;

输出这个信息,则传输成功,没有则传输失败 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!