🔄 Handling File Uploads in Express.js with Multer – Rename, Store & Access Like a Pro
Handling file uploads is an essential part of building modern web applications—whether you're letting users upload profile pictures, documents, or other media. With Express.js, one of the most powerful tools to make this seamless is Multer.
In this post, I'll walk you through how to:
✅ Upload files using Multer ✅ Rename them with a custom format ✅ Access key details like storage path, MIME type, and size
Let’s dive in 🧵
📦 Step 1: Set Up Multer with Custom Filename
Here’s how you configure Multer to rename the uploaded file to and store it in a dedicated folder:
🧠 Why this matters:
Keeps filenames unique using timestamps
Prevents overwriting
Helps in identifying file type by extension
🔁 Step 2: Create the Upload Route and Access File Details
Once the setup is ready, use the following route to handle file uploads and log every important detail:
📋 What req.file Contains
After upload, you can access:
Property Description Name of the form field (e.g., "file") Original file name from the user's machine The renamed file on your server () Directory where the file is stored (e.g., "uploads/") Full path to the file (useful for accessing or deleting) MIME type of the uploaded file File size in bytes (you can convert it to KB/MB)
✅ Bonus: Serve Files Publicly (Optional)
If you want to allow public access to uploaded files:
Then a file like can be accessed at:
🔐 Best Practices to Follow
Validate MIME type and file size
Never store files directly with original names
Avoid mixing uploaded files with app files
Use unique file naming patterns (like UUIDs or timestamps)
💬 Final Thoughts
Multer makes file uploads simple yet powerful in Express.js. With the right setup, you can rename files smartly, access file metadata, and store them safely on your server.
Have you implemented file uploads in your projects? Let’s discuss best practices and real-world use cases in the comments 👇
#NodeJS #ExpressJS #Multer #WebDevelopment #JavaScript #BackendDevelopment #DeveloperTips #FileUpload #LinkedInTech #connections #js #javascript