节点:更改字段的目标文件夹

时间:2018-12-17 16:03:43

标签: node.js express multer

我有简单的multer图像上传。

// Multer settings
// STORAGE FOR USER AVATAR
var storageAvatar = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, 'public/uploads/avatars/')
  },
  filename: function (req, file, cb) {
    cb(null, req.user.id + '.jpg')
  }
})
 // STORAGE FOR ARTICLE THUMBNAILS
var storageThumbnail = multer.diskStorage({
  destination: function (req, file, cb) {
    cb(null, 'public/uploads/thumbnails/')
  },
  filename: function (req, file, cb) {
    cb(null, "clanok" + '.jpg')
  }
})

// SETTING UPLOAD FOLDER
var upload = multer({
  storage: storageAvatar
})

// Multer BEFORE CSRF!!!
app.use(upload.fields([{
  name: 'avatar',
  maxCount: 1,
}, {
  name: 'thumbnail',
  maxCount: 1,
}]));

我的问题是我无法为头像和缩略图设置不同的文件夹。我只能为两个文件夹设置一个文件夹:/我尝试的其他所有操作均以无效的CSRF结尾。感谢您的建议。

编辑:以一种形式,我只使用一件事。因此,例如,在个人资料更新中,我只能更改文章中的头像,而我只能更改文章的缩略图。他们不需要麻烦,上传字段可以分开,但不知道如何。

1 个答案:

答案 0 :(得分:0)

我在论坛上找到了如何通过在表单的结尾添加?_csrf={{csrfToken}}来解决csrf问题的方法,这样我就可以使用使用multer的官方方法了:)