The purpose of the MVC template is to give a clear separation of responsibilities. The view processes the presentation, the controller processes the events, and the model provides business logic. (I understand that many web frameworks don't exactly follow the MVC pattern. Django, for example, calls itself MVT (or something like that)).
Therefore, since HTTP headers are part of the presentation, they must be displayed in the view. A well-written MVC application will allow you to have non-web representations (like the desktop version) using the same controller and model. Putting headers in the controller will break this clear separation.
gdw2
source share