Express has one routing method per HTTP method, named after it in lowercase, such as app.get(), app.post() and app.delete(). Each takes a path and a handler, and the handler runs only when both the method and the path match.
app.get('/users', (req, res) => {
res.send('GET request');
});
app.post('/users', (req, res) => {
res.send('POST request');
});
app.put('/users/:id', (req, res) => {
res.send('PUT request');
});
app.delete('/users/:id', (req, res) => {
res.send('DELETE request');
});
Here /users answers GET and POST with different handlers, and /users/:id answers PUT and DELETE for one user. A method that no route handles, such as PATCH on /users, falls through to the 404 response. app.get() also answers HEAD requests for the same path.
To keep every method of one path together, chain them with app.route(), such as app.route('/users').get(...).post(...). Use app.all() when one handler must run for every method.
This answer doesn't lend itself to a diagram - it reads best . No credits were charged.
Why there's no diagram: “”
The interactive diagram is below the answer - jump to diagram ↓ · Below it, the related concept . Jump to it ↓
The diagram below the answer is the concept . Jump to it ↓