Back
Syntax
Study
Editor
Mode:
HTML
CSS
JavaScript
PHP
Reset
Run »
HTML / CSS / JS
const express = require('express'); const morgan = require('morgan'); const compression = require('compression'); const app = express(); // ── Third-party middleware ──────────────────────────────────── app.use(morgan('dev')); // HTTP request logger app.use(compression()); // gzip responses app.use(express.json()); // ── Custom app-level middleware ─────────────────────────────── app.use((req, res, next) => { req.requestId = crypto.randomUUID(); res.setHeader('X-Request-Id', req.requestId); next(); }); // ── Route-level middleware ──────────────────────────────────── function requireAdmin(req, res, next) { if (req.headers['x-admin-key'] !== process.env.ADMIN_KEY) { return res.status(403).json({ error: 'Forbidden' }); } next(); } app.delete('/admin/cache', requireAdmin, (req, res) => { res.json({ cleared: true }); }); // ── 404 fallback ────────────────────────────────────────────── app.use((req, res) => { res.status(404).json({ error: `${req.method} ${req.path} not found` }); }); app.listen(3000);
Result
Open