最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

为什么multer不上传带有存储选项的图片?

运维笔记admin16浏览0评论

为什么multer不上传带有存储选项的图片?

为什么multer不上传带有存储选项的图片?

Multer可以上传我的文件,但前提是我使用了dest选项。当我使用diskStorage时,它不起作用。我确定我做错了,请随时纠正我。这是我的代码...

    const storage = multer.diskStorage({
  destination: (req, file, cb) => {
    cb(null, "/uploads");
  },
  filename: (req, file, cb) => {
    cb(null, Date.now() + "-" + file.originalname);
  }
})

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


router.post('/signup', upload.single("avatar"), (req, res, next) => {

  console.log(req.file);

  const { heroname, pass, pass2 } = req.body;

  const salt = bcrypt.genSaltSync(12);
  const hashedPassWord = bcrypt.hashSync(pass, salt);

  User.create({
    name: heroname,
    password: hashedPassWord
  })
    .then(() => {
      console.log('Task complete!');
      res.redirect('/')
    })
    .catch((err) => {
      next(err);
    })

});

这是关联的HTML ...

      <div class="form-item">
    <label for="avatar">Choose your Avatar:</label>
    <input id="avatar" name="avatar" type="file" accept="image/*">
  </div>

当我将req.file登录到控制台时,它显示正确的信息。当我查看上载文件夹时,没有任何上载。

回答如下:

事实证明,我需要./作为我的上载文件夹文件路径,而不是/

发布评论

评论列表(0)

  1. 暂无评论