Handling Request Data: Body, Query & Params
Master how Express receives and parses incoming data from clients, including route parameters, query strings, JSON bodies, and form submissions.
Where Client Data Comes From
An HTTP request can carry data in several places. An Express handler reads each from a different property of the req object:
- Route params:
req.params - Query string:
req.query - Request body:
req.body - Headers:
req.headers
app.get('/info', (req, res) => {
res.json({ params: req.params, query: req.query });
});Route Parameters
Route parameters are named URL segments prefixed with a colon. For /users/:id, a request to /users/42 gives req.params.id === '42'.
They are always strings, so convert to numbers when needed.
app.get('/users/:id', (req, res) => {
const id = Number(req.params.id);
res.send('Looking up user ' + id);
});All lessons in this course
- Express.js Framework Fundamentals
- Routing & Middleware in Express
- Designing RESTful API Endpoints
- Handling Request Data: Body, Query & Params