一尘不染

如何使用multer存储带有文件扩展名的文件?

node.js

设法将我的文件存储在一个文件夹中,但是没有文件扩展名。

有谁知道我将如何存储带有文件扩展名的文件?


阅读 472

收藏
2020-07-07

共1个答案

一尘不染

从文档中:“ Multer不会为您添加任何文件扩展名,您的函数应返回带有文件扩展名的文件名。”

添加扩展名的方法如下:

var multer = require('multer');

var storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, 'uploads/')
  },
  filename: function (req, file, cb) {
    cb(null, Date.now() + '.jpg') //Appending .jpg
  }
})

var upload = multer({ storage: storage });

我建议使用该mimetype属性来确定扩展名。例如:

filename: function (req, file, cb) {
  console.log(file.mimetype); //Will return something like: image/jpeg

更多信息:https//github.com/expressjs/multer

2020-07-07