How to Upload Multiple Files Using Node.js

We use Node.js to build web application backend and one of the use cases that comes often is a file upload feature. In this tutorial, we are going to learn and build an application that can let user upload multiple files using Node.js.

Here rather than .single() we are using .array(selector,fileLimit) of Multer. Multer will accept array of files limiting to max 2 file at each time. You can of course increase the number as you may need. Rest of the code is same as previous tutorial.

On Form submit, we will stop the page refresh by returning FALSE and call the API using ajaxSubmit(). You can Add this code in separate file and add it below the jquery.form or copy and paste just below this line.

Running the application

To run the application, switch to project directory and type following command.

node Server.js

Visit localhost:3000 to view the app. Choose multiple files from the selection window and see the console.

Further enhancement

If you want to have different control for file rather than single HTML control then you need to define multiple files control in HTML with same name in order to recognize the Multer that it is array of files. Here is how you can do this. Currently we are using this.

Great help! Do you perhaps no how to write the images names to get the names of the images as they are saved to uploads. I am wanting to use the names and save them as urls to a mongodb, so that I can retrieve the images to be added to an img tag with angular.

i am developing a project using Node.js and Angular2 , i have huge amount of objects in an array and send that using http.post() method to node server but server works on array and take more than 2 minutes and before response from server my application throws Uncaught Error : ERR_EMPTY_RESPONSE url : null , can you please suggest me solution to that.