Express.js
Beginner
1 min read
The Response Object
Example
const express = require('express');
const path = require('path');
const app = express();
app.use(express.json());
// JSON response with status
app.post('/login', (req, res) => {
const { email } = req.body;
if (!email) return res.status(422).json({ error: 'email required' });
// Set an httpOnly auth cookie
res.cookie('session', 'tok_abc123', {
httpOnly: true,
secure: process.env.NODE_ENV === 'production',
sameSite: 'lax',
maxAge: 7 * 24 * 60 * 60 * 1000, // 7 days in ms
});
res.status(200).json({ message: 'Logged in', email });
});
// File download
app.get('/report', (req, res) => {
const file = path.join(__dirname, 'reports', 'monthly.pdf');
res.download(file, 'monthly-report.pdf', (err) => {
if (err) res.status(404).json({ error: 'File not found' });
});
});
// Redirect
app.get('/old-path', (req, res) => {
res.redirect(301, '/new-path');
});
// 204 No Content
app.delete('/items/:id', (req, res) => {
res.status(204).end();
});
app.listen(3000);
Related Resources
Express.js Reference
Complete tag & property list
Express.js How-To Guides
Step-by-step practical guides
Express.js Exercises
Practice what you've learned
More in Express.js