Node JS为不同的用户上传,管理和下载多个图像

时间:2017-05-02 19:08:59

标签: javascript node.js mongodb mean-stack multer

找到了几个使用multer上传多个图像的教程,但未能找到如何管理这些文件(如命名而不覆盖)特定用户和前端获取/检索。

1 个答案:

答案 0 :(得分:0)

您好用multer命名文件,你可以这样做:

import multer from 'multer';
import mime from 'mime';
let storage = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, './dist/client/assets/uploads/')
  },
  filename: function (req, file, cb) {
    crypto.pseudoRandomBytes(16, function (err, raw) {
      cb(null, raw.toString('hex') + Date.now() + '.' + mime.extension(file.mimetype));
    });
  }
});

let uploader = multer({
  storage: storage
});
router.post('/upload', uploader.array('upload', 10), ctrl.uploadFile);

你可以在DB中存储路径,你可以这样得到它:

for (let i=0 ; i<req.files.length; i++){
 let pathFile = req.files[i].path;
}