Lithe\App
A classe `Lithe\App` é o ponto de entrada principal para a aplicação no Lithe. Ela gerencia o ciclo de vida da aplicação, configurações de middleware, rotas e responde a requisições HTTP.
Descrição
A classe Lithe\App
é a base para criar e gerenciar uma aplicação no Lithe. Ela fornece métodos para configurar middleware, definir rotas, tratar exceções HTTP e iniciar a aplicação. Através da App
, você pode gerenciar a configuração da aplicação, controlar o fluxo de execução e fornecer uma resposta para as requisições HTTP recebidas.
Métodos
METHOD(string $path, callable|array ...$handler): void
- Descrição: Define uma rota para um método HTTP específico.
- Parâmetros:
$path
- Caminho da rota.$handler
- Manipuladores (callbacks) para a rota.
- Métodos Disponíveis: GET, POST, PUT, DELETE, HEAD, PATCH
$app->get('/welcome', function($req, $res) {
$res->send('Bem-vindo!');
});
$app->post('/submit', function($req, $res) {
$res->send('Formulário Enviado');
});
use(string|callable|Router|array ...$middleware): void
- Descrição: Adiciona um middleware à aplicação. Pode ser uma função de callback, uma string para um caminho de middleware, um objeto
Router
, ou um array de middlewares. - Parâmetros:
$middleware
- Middleware ou roteador a ser adicionado.
$app->use(function($req, $res, $next) {
// Lógica do middleware
$next();
});
set(string $key, mixed $value): void
- Descrição: Define uma configuração global para a aplicação.
- Parâmetros:
$key
- Chave da configuração.$value
- Valor da configuração.
$app->set('view engine', 'blade');
fail(int $status, callable $handler): void
- Descrição: Define um manipulador específico para exceções HTTP com base no código de status.
- Parâmetros:
$status
- Código de status HTTP para o qual o manipulador será definido.$handler
- Manipulador para tratar a exceção HTTP.
$app->fail(404, function($req, $res) {
$res->send('Página Não Encontrada');
});
listen(): void
- Descrição: Permite que a aplicação ouça e responda às solicitações HTTP.
$app->listen();
route(string $path): object
- Descrição: Cria um objeto para definir rotas com um prefixo específico.
- Parâmetros:
$path
- Prefixo da rota.
- Retorno: Um objeto anônimo para definir rotas com o prefixo fornecido.
$app->route('/api')
->get(function($req, $res) {
$res->send('Lista de Usuários');
});