Що таке middleware в Express.js і як він працює?
Функції що виконуються протягом request-response циклу.
Базовий Middleware
```javascript const express = require('express'); const app = express();
// Простий middleware app.use((req, res, next) => { console.log('Час:', Date.now()); next(); // Передати наступному middleware });
// Route handler app.get('/', (req, res) => { res.send('Привіт!'); }); ```
Типи
Application-level: ```javascript app.use(express.json()); app.use(express.urlencoded({ extended: true })); ```
Реальний приклад - Auth
```javascript const authMiddleware = (req, res, next) => { const token = req.headers.authorization;
if (!token) { return res.status(401).json({ error: 'Немає токена' }); }
try { req.user = jwt.verify(token, SECRET); next(); } catch (err) { res.status(403).json({ error: 'Невірний токен' }); } };
// Захищений роут app.get('/profile', authMiddleware, (req, res) => { res.json({ user: req.user }); }); ```
Коротка відповідь
Для співбесідиКоротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.