UNPKG

1.75 kBMarkdownView Raw
1# express-fileupload Examples
2
3## Basic File Upload
4**Your node.js code:**
5```javascript
6const express = require('express');
7const fileUpload = require('express-fileupload');
8const app = express();
9
10// default options
11app.use(fileUpload());
12
13app.post('/upload', function(req, res) {
14 if (!req.files || Object.keys(req.files).length === 0) {
15 return res.status(400).send('No files were uploaded.');
16 }
17
18 // The name of the input field (i.e. "sampleFile") is used to retrieve the uploaded file
19 let sampleFile = req.files.sampleFile;
20
21 // Use the mv() method to place the file somewhere on your server
22 sampleFile.mv('/somewhere/on/your/server/filename.jpg', function(err) {
23 if (err)
24 return res.status(500).send(err);
25
26 res.send('File uploaded!');
27 });
28});
29```
30
31**Your HTML file upload form:**
32```html
33<html>
34 <body>
35 <form ref='uploadForm'
36 id='uploadForm'
37 action='http://localhost:8000/upload'
38 method='post'
39 encType="multipart/form-data">
40 <input type="file" name="sampleFile" />
41 <input type='submit' value='Upload!' />
42 </form>
43 </body>
44</html>
45```
46
47## Multi-File Upload
48express-fileupload supports multiple file uploads at the same time.
49
50Let's say you have three files in your form, each of the inputs with the name `my_profile_pic`, `my_pet`, and `my_cover_photo`:
51```html
52<input type="file" name="my_profile_pic" />
53<input type="file" name="my_pet" />
54<input type="file" name="my_cover_photo" />
55```
56
57These uploaded files would be accessible like so:
58```javascript
59app.post('/upload', function(req, res) {
60 // Uploaded files:
61 console.log(req.files.my_profile_pic.name);
62 console.log(req.files.my_pet.name);
63 console.log(req.files.my_cover_photo.name);
64});
65```
66