Cursos / Informática para Internet / Plataformas de aplicações Web / Aula
O ponto de entrada de todas as requisições de uma aplicação Laravel é o arquivo public/index.php. Esse arquivo não contém muito código e é só um ponto de entrada para carregar o resto do framework.
Em seguida a requisição carrega o Kernel HTTP do Laravel, que está em app/Http/Kernel.php. Esse chamado "kernel" nada mais é que um módulo PHP que vai detectar o ambiente da aplicação e realizar outras tarefas que são necessárias antes da requisição ser efetivamente processada.
O kernel HTTP também define uma lista de "middlewares" que todas as requisições devem passar. Eles podem realizar várias tarefas como escrever e ler sessões HTTP, determinar se a aplicação está em modo de manutenção, verificar tokens, dentre outras operações.
Uma das mais importantes ações que o kernel HTTP realiza em uma requisição no Laravel é carregar os chamados "Services Providers" para sua aplicação, que estão configurados em config/app.php, iterando em todos eles e instanciando cada um.
Services providers são responsáveis por iniciar todos os componentes do framework como bancos de dados, filas, validações e componentes de roteamento.
Um dos Services Providers mais importantes é o RouteServiceProvider, que carrega os arquivos de rota contidos na pasta routes.
Quando sua aplicação está executando e uma requisição chega nesse ponto, ela será direcionada para outro roteamento ou Controller de acordo com as configurações de roteamento.
Depois de passar por todos os passos anteriores, uma rota ou controller pode retornar uma resposta, que irá realizar o envio dos dados de retorno, mas o Laravel ainda pode modificar a resposta nesse momento com novos cabeçalhos, por exemplo, se assim for configurado.
Finalmente o index.php chamada o método "send" que envia o conteúdo final para o navegador e a jornada de uma requisição acaba.
Versão 5.3 - Todos os Direitos reservados