# Read the query string and the request body

> Use $.query for the URL parameters and $.body for JSON or form data in a route handler.

Framework: total5
Product: Total.js 5 (total5@0.0.19)
Language: en
Content-SHA256: f77f4ecaf6dbba8493b0302111bc2ae2524d53427a83406f802506c9a05511f3
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: total5-installed@total5@0.0.19
Review: not-recorded

Inside a route handler, `$.query` is the parsed query string and `$.body` is the parsed body. Total.js parses JSON, URL-encoded forms and multipart forms for you, based on the `content-type` of the request.

```js controllers/echo.js
exports.install = function() {
	ROUTE('POST /echo/', echo);
};

function echo($) {
	$.json({ query: $.query, body: $.body });
}
```
