tenantcloud / guzzle-helper
Guzzle helpers.
Installs: 21 589
Dependents: 5
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 0
Open Issues: 1
Requires
- php: >=8.2
- ext-json: *
- guzzlehttp/guzzle: ~7.2
- illuminate/support: ^9.0 || ^10.0
- spatie/macroable: 1.0.1
Requires (Dev)
- orchestra/testbench: ^7.0 || ^8.5
- pestphp/pest: ^2.8
- php-cs-fixer/shim: ~3.19.2
- phpstan/phpstan: ~1.10.21
- phpstan/phpstan-mockery: ^1.1
- phpstan/phpstan-phpunit: ^1.3
- phpstan/phpstan-webmozart-assert: ^1.2
- tenantcloud/php-cs-fixer-rule-sets: ~3.0.0
This package is auto-updated.
Last update: 2024-12-14 21:37:07 UTC
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 >=7.4.1
- 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