keerill /guzzle-clockwork
一个Guzzle中间件,用于记录使用Clockwork的请求
v1.0.6
2023-10-05 07:34 UTC
Requires
- php: >=8.1
- hannesvdvreken/guzzle-profiler: ^2.0
- illuminate/contracts: ^10.0
- itsgoingd/clockwork: ^5.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8
- orchestra/testbench: ^v8.8
- pestphp/pest: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
README
Guzzle中间件,用于记录请求的clockwork时间线,以便您可以在浏览器开发者工具中查看时间线。
用法
Composer安装
composer require keerill/guzzle-clockwork
// First you need a Clockwork object $clockwork = \Clockwork\Support\Vanilla\Clockwork::init(); // Create the Guzzle middleware $middleware = new \GuzzleHttp\Profiling\Middleware( new \GuzzleHttp\Profiling\Clockwork\Profiler($clockwork->getClockwork()->timeline()) ); // Then you need to add it to the Guzzle HandlerStack $stack = \GuzzleHttp\HandlerStack::create(); $stack->unshift($middleware); $client = new \GuzzleHttp\Client(['handler' => $stack]); $client->get('https://httpbin.org/status/418');
根据您对Clockwork的集成,确保在输出页面之前调用$clockwork->requestProcessed();
Laravel
如果您正在使用Laravel,请使用包含的服务提供程序将订阅者添加到每个Guzzle客户端。
'providers' => [ ... \Clockwork\Support\Laravel\ClockworkServiceProvider::class, \GuzzleHttp\Profiling\Clockwork\GuzzleClockworkServiceProvider::class, ],
请确保通过IoC容器创建每个客户端(使用GuzzleHttp\ClientInterface
或GuzzleHttp\Client
类型提示)。
贡献
请随时提交拉取请求。请尽量遵守PSR-2。通过运行composer format
快速修复代码风格。请给出有关要添加/更改/删除/修复内容的良好描述。
测试
在推送之前,运行单元测试套件。
composer test