Custom Middleware (Custom Middleware)
Custom Middleware: ساخت Middleware سفارشی 🔧
Custom Middleware برای اضافه کردن functionality خاص به Express استفاده میشه!
// middleware/logger.js
const logger = (req, res, next) => {
const timestamp = new Date().toISOString();
console.log(`[${timestamp}] ${req.method} ${req.url}`);
next();
};
module.exports = logger;
// middleware/auth.js
const auth = (req, res, next) => {
const token = req.headers.authorization;
if (!token) {
return res.status(401).json({ error: 'Unauthorized' });
}
// Verify token
// ...
req.user = { id: 1, name: 'John' };
next();
};
module.exports = auth;
// server.js
const express = require('express');
const logger = require('./middleware/logger');
const auth = require('./middleware/auth');
const app = express();
app.use(logger);
app.use('/api', auth);
app.get('/api/users', (req, res) => {
res.json({ user: req.user });
});
Middleware با Options:
// middleware/validator.js
const validator = (schema) => {
return (req, res, next) => {
const { error } = schema.validate(req.body);
if (error) {
return res.status(400).json({ error: error.details[0].message });
}
next();
};
};
module.exports = validator;
// استفاده
const validator = require('./middleware/validator');
const userSchema = require('./schemas/userSchema');
app.post('/users', validator(userSchema), (req, res) => {
res.json({ message: 'User created' });
});
✅ یاد گرفتید: Custom Middleware برای اضافه کردن functionality عالیه!
آماده رفتن به درس بعدی هستید؟
این درس را به پایان رساندید و میتوانید به درس بعدی بروید.