Download the PHP package elavora/api-framework without Composer
On this page you can find all versions of the php package elavora/api-framework. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download elavora/api-framework
More information about elavora/api-framework
Files in elavora/api-framework
Package api-framework
Short Description Nucleo HTTP modular do framework Elavora
License MIT
Informations about the package api-framework
Elavora API Framework
Nucleo HTTP modular do framework Elavora para criar APIs pequenas, testaveis e extensiveis.
O pacote fornece roteamento, request/response, middleware, container simples, atributos de controller e contratos para modulos opcionais como cache, banco, filas, logs e storage.
Instalacao
Requisitos:
- PHP 8.1 ou superior
- extensao
json
Aplicacao minima
Rotas
Use os atalhos HTTP para registrar rotas:
Tambem e possivel registrar uma rota com metodo dinamico:
Handlers podem retornar Response, array, string ou objetos que implementam Responseable.
Request
Request normaliza metodo, path, query string, corpo, headers e request id.
Quando X-Request-Id nao e informado, o framework gera um identificador e o devolve na resposta.
Response
Use os factories para manter respostas consistentes:
Respostas sao imutaveis. Para ajustar headers ou corpo, use:
Middleware
Middlewares recebem a request e um callable $next, e devem retornar uma Response.
Atributos de controller
O framework inclui atributos para validar a request antes da action e para expor metadados em OPTIONS.
Atributos disponiveis:
Method: restringe o metodo HTTP aceito.RequiredFields: valida campos obrigatorios do corpo.OptionalFields: descreve campos opcionais do corpo.RequiredParams: valida parametros obrigatorios da query string.OptionalParams: descreve parametros opcionais da query string.Details: adiciona metadados de descricao.Response: adiciona metadados de resposta esperada.Cache: usa umCacheStoreregistrado no container.Transaction: usa umTransactionManagerregistrado no container.
Container e extensoes
O container permite registrar instancias usadas por controllers, atributos e extensoes.
Pacotes opcionais podem implementar Extension para registrar dependencias:
Erros HTTP
Use HttpException quando precisar interromper o fluxo com uma resposta HTTP controlada.
Erros inesperados retornam 500 Internal Server Error sem expor detalhes sensiveis por padrao. Para desenvolvimento, crie a aplicacao com debug:
Testes
O pacote possui scripts Composer para validar sintaxe e executar a suite:
Licenca
MIT
All versions of api-framework with dependencies
ext-ctype Version *
ext-filter Version *
ext-json Version *