The main purpose of a controller, is to act as a communication gateway for the client. There should be actions, that only connect with the network or deal with the http responsibility. For example: sending different HTTP statuses, handling websocket events, preprocessing requests, body validation, user verification, cookies and etc.