Enhance HTTP request data validation
### Problem

- `controller` should validate the request `body`, `param`, `query`, `header`, `cookie` before processing the business logic.
- Validation should check the data type, format, ranges and more.


### Solutions


### Design