compwright/should-retry 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

compwright/should-retry

最新稳定版本:v1.0.0

Composer 安装命令:

composer require compwright/should-retry

包简介

PSR interop HTTP retry middleware helper

README 文档

README

Installation

$ composer require compwright/should-retry

Usage with Guzzle HTTP library

The popular Guzzle HTTP library includes a retry middleware:

use Compwright\ShouldRetry\ShouldRetry;
use Compwright\ShouldRetry\RetryAfter;

$handler = GuzzleHttp\HandlerStack::create();

$handler->push(
    GuzzleHttp\Middleware::retry(
        new ShouldRetry(),
        new RetryAfter()
    ),
    'retry'
);

$client = new GuzzleHttp\Client([
    'handler' => $handler,
]);

Configuration

Both ShouldRetry and RetryAfter are configurable via setters:

$shouldRetry = (new ShouldRetry())
    ->setMaxRetries(5)
    ->setRetryOnStatusCodes(429)
    ->setLogger($logger); // attach PSR-3 debug logger

$retryAfter = (new RetryAfter())
    ->setRetryAfterHeader('x-rate-limit-reset')
    ->setFallbackStrategy($fallback);

Default configuration:

  • Retry up to 3 times
  • Retry on 429, 500, 502, 503, 504 error codes
  • When retrying, wait Retry-After seconds
  • If header is missing, use exponential backoff

License

MIT License

统计信息

  • 总下载量: 3.11k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 1
  • 依赖项目数: 2
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2025-03-14