tenantcloud / guzzle-helper
Guzzle helpers.
v2.0.1
2025-07-02 22:29 UTC
Requires
- php: >=8.3
- ext-json: *
- guzzlehttp/guzzle: ~7.2
- illuminate/support: ^12.0
- spatie/macroable: 1.0.1
Requires (Dev)
- orchestra/testbench: ^10.0
- pestphp/pest: ^3.8
- php-cs-fixer/shim: ^3.75
- phpstan/phpstan: ^2.1.17
- phpstan/phpstan-mockery: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- phpstan/phpstan-webmozart-assert: ^2.0
- tenantcloud/php-cs-fixer-rule-sets: ~3.4.1
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
Guzzle helpers. Add Header and Json obfuscators for guzzle middleware. Used for remove autorization headers and sensitive date from response logs.
Requirements
- Guzzle >=7
- PHP version >=8.2
- Docker (optional)
Installation
In your composer.json, add this repository:
"repositories": [
{
"type": "git",
"url": "https://github.com/tenantcloud/guzzle-helpers"
}
],
Then do composer require tenantcloud/guzzle-helpers to install the package.
Examples
$stack = \GuzzleHttp\HandlerStack::create();
// Return all response body.
$stack->unshift(\TenantCloud\GuzzleHelper\GuzzleMiddleware\GuzzleMiddleware::fullErrorResponseBody());
// Hide secret info from error responses (cut contactEmail, contactPhone keys).
// Hide Authorization header
$stack->unshift(\TenantCloud\GuzzleHelper\GuzzleMiddleware\GuzzleMiddleware::dumpRequestBody([
new \TenantCloud\GuzzleHelper\GuzzleMiddleware\JsonObfuscator([
'contactEmail',
'contactPhone',
]),
new \TenantCloud\GuzzleHelper\GuzzleMiddleware\HeaderObfuscator(['Authorization']),
]));
Commands
Install dependencies:
docker run -it --rm -v $PWD:/app -w /app composer install
Run tests:
docker run -it --rm -v $PWD:/app -w /app php:7.4-cli vendor/bin/phpunit
Run php-cs-fixer on self:
docker run -it --rm -v $PWD:/app -w /app composer cs-fix