NAME
HTTP::Tiny::Plugin::Retry - Retry failed request
VERSION
This document describes version 0.004 of HTTP::Tiny::Plugin::Retry (from
Perl distribution HTTP-Tiny-Plugin-Retry), released on 2020-08-14.
SYNOPSIS
use HTTP::Tiny::Plugin 'Retry' => {
max_attempts => 3, # optional, default 3
delay => 2, # optional, default 2
retry_if => qr/^[45]/, # optional, default is only 5xx errors are retried
};
my $res = HTTP::Tiny::Plugin->new->get("
http://www.example.com/");
DESCRIPTION
This plugin retries failed response. By default only retries 5xx
failures, as 4xx are considered to be client's fault (but you can
configure it with "retry_if").
CONFIGURATION
max_attempts
Int. Default 4.
delay
Float.
retry_if
Regex (or scalra), or arrayref, or coderef. If regex or scalar, then
will be matched against response status. If array, then will be assumed
to be status codes to trigger retry. If coderef, will be called with
arguments: "($class, $response)" ($class is the plugin class name) and a
true return value will trigger retry.
strategy
Algorithm::Backoff::* module name, without the prefix and with optional
arguments (see "instantiate_class_with_optional_args" in
Module::Load::Util), e.g. "Constant", "["Exponential" =>
{initial_delay=>2, max_delay=>100}]",
"Exponential=initial_delay,2,max_delay,100".
If set, will use delay and maximum attempt values from specified
Algorithm::Backoff backoff strategry instead of "max_attempts" and
"delay".
ENVIRONMENT
HTTP_TINY_PLUGIN_RETRY_MAX_ATTEMPTS
Int.
HTTP_TINY_PLUGIN_RETRY_DELAY
Int.
HOMEPAGE
Please visit the project's homepage at
<
https://metacpan.org/release/HTTP-Tiny-Plugin-Retry>.
SOURCE
Source repository is at
<
https://github.com/perlancar/perl-HTTP-Tiny-Plugin-Retry>.
BUGS
Please report any bugs or feature requests on the bugtracker website
<
https://rt.cpan.org/Public/Dist/Display.html?Name=HTTP-Tiny-Plugin-Retr
y>
When submitting a bug or request, please include a test-file or a patch
to an existing test-file that illustrates the bug or desired feature.
SEE ALSO
HTTP::Tiny::Plugin
Equivalent plugin for LWP::UserAgent::Plugin:
LWP::UserAgent::Plugin::Retry.
AUTHOR
perlancar <
[email protected]>
COPYRIGHT AND LICENSE
This software is copyright (c) 2020 by
[email protected].
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.