Q9: What is the difference between `req.params`, `req.query`, and `req.body`?

Difficulty:EasyTopic:Request Processing

These three properties capture client inputs from different locations in an HTTP request:

  • req.params: Captures dynamic path segments defined in route templates (/users/:id).
  • req.query: Captures key-value URL query parameters appended after the ? symbol (/users?status=active).
  • req.body: Captures payload data submitted in the HTTP request body (requires body parsing middleware).
Key Takeaways
  • Path params reflect resource identifiers; query params reflect modifiers like page or filter.
  • req.body is undefined by default until body-parser or express.json() middleware is mounted.