jetimob/http-php-laravel

Guzzle wrapper to abstract requests that must be authorized through OAuth2.0
14,484
Install
composer require jetimob/http-php-laravel
Latest Version:2.2.2
PHP:^8.1
License:MIT
Last Updated:Aug 25, 2025
Links: GitHub  ·  Packagist
Maintainer: jetimob

http-php-laravel

CI status Conventional Commits

Essa biblioteca funciona como um envelope em torno do Guzzle para facilitar a troca de requisições que precisam de alguma forma de autorização (como o OAuth 2.0) e para automatizar a deserialização das respostas HTTP em instâncias de objetos que representam essas respostas.

Para mais informações sobre a deserialização automática de respostas para classes, olhar o método complexResponseWithArrayTyping.

Toda parte fazer a requisição HTTP é delegada ao Guzzle, sendo assim, a maioria das configurações utilizadas pode ser retirada da documentação oficial.

OAuth 2.0

Flows

Client Credentials

Authorization code

Configuração

Serialização

Importante!

Se o OPcache for utilizado, a opção opcache.save_comments precisa ser ativada, i.e.: opcache.save_comments=1.
Isso é necessário para que os vetores de uma resposta possam ser automaticamente deserializados com um PHP docblock. Por exemplo, considere o código abaixo:

/**
 * @var \Jetimob\Http\Response[] $response_array
 */
protected array $response_array = [];

Se essa declaração estiver dentro de uma classe que estenda \Jetimob\Http\Response e a resposta HTTP conter uma propriedade nomeada response do tipo array, ela será automaticamente deserializada num vetor de objetos do tipo declarado no docblock (\Jetimob\Http\Response nesse caso).
Para funcionar corretamente, o tipo da variável definida deve usar a trait Jetimob\Http\Traits\Serializable.

A definição do tipo da variável no docblock precisa estar na sua forma completa, isso é, \Jetimob\Http\Response e não Response junto de uma importação de namespace use Jetimob\Http\Response;.

Related Packages

eleme/laravel-guzzle

laravel guzzle service provider

6,607 6
kozz/laravel-guzzle-provider

Guzzle 5/6 Service Provider for Laravel

1,107,265 62
vjroby/laravel-nonce

This is a package for integrating nonces in Laravel in requests

42,757 3
php-http/laravel-httplug

Laravel package to integrate the Httplug generic HTTP client into Laravel

110,124 12