آپلود فایل ساده (Basic File Upload)
آپلود فایل ساده: آپلود فایل با Multer 📤
بیایید یک سیستم آپلود فایل ساده بسازیم!
const express = require('express');
const multer = require('multer');
const path = require('path');
const app = express();
// تنظیم storage
const storage = multer.diskStorage({
destination: (req, file, cb) => {
cb(null, 'uploads/');
},
filename: (req, file, cb) => {
const uniqueSuffix = Date.now() + '-' + Math.round(Math.random() * 1E9);
cb(null, file.fieldname + '-' + uniqueSuffix + path.extname(file.originalname));
}
});
const upload = multer({ storage: storage });
// Route برای آپلود
app.post('/upload', upload.single('file'), (req, res) => {
if (!req.file) {
return res.status(400).json({ error: 'No file uploaded' });
}
res.json({
message: 'File uploaded successfully',
file: {
filename: req.file.filename,
size: req.file.size,
mimetype: req.file.mimetype
}
});
});
app.listen(3000);
HTML Form:
<form action="/upload" method="POST" enctype="multipart/form-data">
<input type="file" name="file" required>
<button type="submit">Upload</button>
</form>
✅ یاد گرفتید: آپلود فایل با Multer ساده است!
تمرینهای عملی
برای تثبیت یادگیری این درس تمرینهای زیر را حل کنید
تمرین: آپلود فایل
Medium
سوال تمرین
🎯 تمرین: File Upload Endpoint
یک endpoint برای آپلود فایل بسازید.
پاسخ تمرین
JAVASCRIPT
const express = require('express');
const multer = require('multer');
const upload = multer({ dest: 'uploads/' });
const app = express();
app.post('/upload', upload.single('file'), (req, res) => {
if (!req.file) {
return res.status(400).json({ error: 'No file uploaded' });
}
res.json({
filename: req.file.filename,
size: req.file.size
});
});
app.listen(3000);
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.