https://www.npmjs.com/package/express-fileupload
npm install --save express-fileupload
-
Set Middleware in app.js/server.js
// Process file uploads const fileupload = require("express-fileupload"); app.use(fileupload({ safeFileNames: true, createParentPath: true, preserveExtension: 4 }));
-
When you upload a file, the file will be accessible from req.files our input's name field is foo:
<input name="foo" type="file" />
In your express server request, you can access your uploaded file fromreq.files.foo
.
The req.files.foo object will contain the following:- req.files.foo.name: "car.jpg"
- req.files.foo.mv: A function to move the file elsewhere on your server
- req.files.foo.mimetype: The mimetype of your file
- req.files.foo.data: A buffer representation of your file, returns empty buffer in case useTempFiles option was set to true.
- req.files.foo.tempFilePath: A path to the temporary file in case useTempFiles option was set to true.
- req.files.foo.truncated: A boolean that represents if the file is over the size limit
- req.files.foo.size: Uploaded size in bytes
- req.files.foo.md5: MD5 checksum of the uploaded file
-
Move the uploaded file somewhere using .mv() .
// Move file to location await file.mv("/home/user/mypro/downloads");