reneiw/hiei

HTTP 请求特别重要!.

1.1.0 2021-06-28 10:08 UTC

This package is auto-updated.

Last update: 2024-09-28 17:38:26 UTC


README

  • HTTP 请求特别重要!.

提示

如果您只需要一个可返回的中间件。
那么您可以尝试 caseyamcl/guzzle_retry_middleware
我想您会喜欢它的。

安装

通过 Composer

$ composer require reneiw/hiei -vvv

快速开始

use GuzzleHttp\Client;
use GuzzleHttp\Exception\GuzzleException;
use GuzzleHttp\HandlerStack;
use Reneiw\Hiei\HieiMiddleware;
use Reneiw\Hiei\HTTPService;

$stack = HandlerStack::create();
$stack->push(
    HieiMiddleware::factory(
        [
            //Set a maximum number of attempts per request, default 10
            'max_retry_attempts' => 2,
            // Only retry when status is equal to these response codes, default [429, 503]
            'retry_on_status' => [204, 429, 503],
        ]
    )
);
$client = new Client(['handler' => $stack]);
$http = new HTTPService(
    $client, 
    [
        'errorCallback' => [
            function ($method, $uri, $params, GuzzleException $e) {
               logger()->info('123', [$method, $uri, $params, $e->getMessage()]);
            },
            function ($method, $uri, $params, GuzzleException $e) {
               logger()->info('223', [$method, $uri, $params, $e->getMessage()]);
            },
        ],
   ]
);
return $http->request('GET', 'http://www.google.com/generate_204');

使用方法

待办事项

贡献

您可以通过以下三种方式之一进行贡献

  1. 使用 问题跟踪器 提交错误报告。
  2. 问题跟踪器 上回答问题或修复错误。
  3. 贡献新功能或更新wiki。

代码贡献流程并不非常正式。您只需确保遵循PSR-0、PSR-1和PSR-2编码指南。任何新的代码贡献都必须附带适用的单元测试。

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件