graph LR
A[Request] -->|1| B[Middleware]
B --> C{Router}
C -->|2a| D[Controller]
C -->|2b| E[Model]
D -->|3a| F[View]
E -->|3b| D
D -->|4| G[Response]
F -->|5| G
style A fill:#f9f,stroke:#333,stroke-width:2px
style B fill:#fcf,stroke:#333,stroke-width:2px
style C fill:#ccf,stroke:#333,stroke-width:2px
style D fill:#cff,stroke:#333,stroke-width:2px
style E fill:#cfc,stroke:#333,stroke-width:2px
style F fill:#ffc,stroke:#333,stroke-width:2px
style G fill:#f9f,stroke:#333,stroke-width:2px
- Request
- La solicitud HTTP entra en la aplicación.
- Middleware
- Procesa la solicitud inicial, realizando tareas como autenticación, registro, etc.
- Router
- Determina a qué controlador se debe enviar la solicitud.
- Controller
- Recibe la solicitud del router, maneja la lógica de la aplicación y envía la respuesta de vuelta al usuario
- Model
- Representa la estructura de datos de la aplicación y lógica de negocio relacionada.
- View
- Genera la salida visual que será mostrada al usuario.
- Response
- La respuesta puede ser una vista renderizada, datos JSON, etc.