Node.js 的 Multer 不工作

Multer with Node.js not working

好的,这是我的表格:

<form action="/measure" method="post">
  <input type="file" name="thisfile"/>
  <input type="submit" value="Give us that file!"/>
</form>

我的服务器:

var express = require("express"),
    multer = require('multer'),
    app = express(),
    upload = multer({ dest: "./uploads/" });

app.post("/measure", upload.single("thisfile"), function (req, res) {
  console.log(req.file);
  //other stuff
});

当我将表单提交到我的服务器时,req.file 未定义。

哇,假设一些事情从头开始给你写代码,但我发现了错误。在 Multer 文档中,它说 Multer 不会处理不是多部分的表单。所以你必须把它添加到你的表单中 (enctype="multipart/form-data"):

<form action="/measure" method="post" enctype="multipart/form-data">
  <input type="file" name="thisfile"/>
  <input type="submit" value="Give us that file!"/>
</form>

有了它应该可以工作。让我知道这是否对您有帮助。 PS:这是文档:https://www.npmjs.com/package/multer