Download the PHP package edgvi10/integration-controller without Composer
On this page you can find all versions of the php package edgvi10/integration-controller. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package integration-controller
Integration Controller
Uma biblioteca PHP flexível para realizar requisições HTTP e integrar com APIs REST de forma simples e eficiente.
📋 Requisitos
- PHP >= 7.4
- Extensão cURL habilitada
📦 Instalação
Via Composer
Instalação Manual
-
Clone o repositório:
- Inclua o autoloader do Composer no seu projeto:
🚀 Uso Básico
Inicialização
📖 Exemplos de Uso
1. Requisição GET Simples
2. Requisição POST com Dados JSON
3. Autenticação Bearer Token
4. Autenticação Basic
5. Autenticação API Key
6. Requisição PUT
7. Requisição PATCH
8. Requisição DELETE
9. Configuração Avançada de Requisição
10. Adicionando Campos Dinamicamente
11. Requisição com Retry (Tentativas Automáticas)
12. Requisição Assíncrona
13. Logging Habilitado
14. Trabalhando com Respostas
15. Múltiplas Requisições com Mesma Instância
16. Configurando SSL e Timeout
17. Enviando Array de Valores em Parâmetros
18. Usando os atalhos para Verbos HTTP
🔧 Métodos Disponíveis
Métodos de Configuração
setBaseURL($url)- Define a URL basesetUseJson($bool)- Define se usa JSON automaticamentesetAuthentication($type, $auth)- Configura autenticaçãosetMethod($method)- Define o método HTTPsetEndpoint($endpoint)- Define o endpointsetHeaders($values)- Define headers personalizadosaddHeader($key, $value)- Adiciona um header personalizadormHeader($key, $conditionalValue = null)- Remove um header personalizado, opcionalmente filtrando pelo valorsetParams($params)- Define parâmetros de query stringsetData($data)- Define dados do bodyaddField($key, $value)- Adiciona um campo ao bodyaddFile($key, $fileResource)- Adiciona um arquivo ao body
Métodos de Requisição
send()- Envia a requisição configuradasendAsync($callbackSuccess, $callbackError)- Envia requisição assíncronasendWithRetry($maxRetries, $delaySeconds)- Envia com tentativas automáticasget($endpoint, $params)- Requisição GETpost($endpoint, $data, $params)- Requisição POSTput($endpoint, $data, $params)- Requisição PUTpatch($endpoint, $data, $params)- Requisição PATCHdelete($endpoint, $params)- Requisição DELETE
Métodos de Resposta
jsonResponse()- Retorna resposta decodificada como JSONresponseStatusCode- Código de status HTTPresponseBody- Body da respostaresponseHeaders- Headers da resposta
Métodos de Limpeza
clear()- Limpa tudoclearRequest()- Limpa dados da requisiçãoclearResponse()- Limpa dados da respostaclearLogs()- Limpa logsclearLastError()- Limpa último erro
Métodos de Log
log($message, $data)- Registra uma mensagem de log
⚙️ Propriedades Configuráveis
| Propriedade | Tipo | Padrão | Descrição |
|---|---|---|---|
baseURL |
string | null | URL base da API |
headers |
array | [] | Headers padrão |
authentication |
array | null | Configurações de autenticação |
timeout |
int | 30 | Timeout em segundos |
verifySSL |
bool | true | Verificar certificado SSL |
userAgent |
string | null | User Agent personalizado |
useJson |
bool | false | Usar JSON automaticamente |
debug |
bool | false | Modo debug |
enableLogging |
bool | false | Habilitar logging |
logs |
array | [] | Array de logs |
🔐 Tipos de Autenticação Suportados
- Bearer Token: Para APIs que usam tokens JWT ou OAuth
- Basic Auth: Para autenticação básica HTTP
- API Key: Para APIs que usam chaves em headers personalizados
🐛 Tratamento de Erros
✅ Pendencias
- [ ] Implementar lógica de retry com backoff exponencial
- [ ] Adicionar suporte para autenticação OAuth2
- [ ] Adicionar suporte para opções personalizadas do cURL
- [ ] Tratamento de tipos de conteúdo baseado nos dados da requisição
- [x] Adicionar suporte básico para content type application/json
- [ ] Adicionar suporte básico para content type application/xml
- [ ] Adicionar suporte básico para requisições multipart/form-data
- [ ] Melhorar tratamento de erros e logging
- [ ] Adicionar suporte para requisições assíncronas usando curl_multi ou outras bibliotecas
📝 Licença
Este projeto está licenciado sob a Licença MIT - veja o arquivo LICENSE para mais detalhes.
👤 Autor
Eduardo Vieira
- Email: [email protected]
- GitHub: @edgvi10
- LinkedIn: Eduardo Vieira
🤝 Contribuindo
Contribuições, issues e solicitações de recursos são bem-vindas!
⭐ Suporte
Se este projeto foi útil para você, considere dar uma estrela no GitHub!
All versions of integration-controller with dependencies
PHP Build Version
Package Version
Requires
php Version
>=7.4
The package edgvi10/integration-controller contains the following files
Loading the files please wait ...