在快速路由器内使用Muller进行file upload

我使用node.js和Express构build了一个可用的REST-API。

现在我需要一个file upload端点,它接受上传的文件并处理它们。

我正在使用Express路由器和一些身份validation中间件。

server.js(节选)

var router = express.Router() app.use("/api", router) [...] router.use(function(req, res, next) { //Authentification middleware [...] next() }) router.route("/upload") .post(function(req, res){ //upload logic }) 

我如何使用multer作为req.file (或如此)提供上传的文件,但仅在/ api /上传和authed用户?

好,我知道了。

我可以用

 var multer = require("multer") var upload = multer({ dest: "some/path" }) [...] router.route("/upload") /* replace foo-bar with your form field-name */ .post(upload.single("foo-bar"), function(req, res){ [...] }) 

对我而言,它也有效。

 var multer = require("multer") var upload = multer({ dest: "path" }) router.post("/upload", upload.single("foo-bar"), function(req, res) { ... }