RetryClient class
An HTTP client wrapper that automatically retries failing requests.
NOTE: RetryClient makes a copy of the request data in order to support resending it. This can cause a lot of memory usage when sending a large StreamedRequest.
- Inheritance
-
- Object
- BaseClient
- RetryClient
Constructors
-
RetryClient(Client _inner, {int retries = 3, FutureOr<
bool> when(BaseResponse) = _defaultWhen, FutureOr<bool> whenError(Object, StackTrace) = _defaultWhenError, Duration delay(int retryCount) = _defaultDelay, FutureOr<void> onRetry(BaseRequest, BaseResponse?, int retryCount)?}) -
Creates a client wrapping
_inner
that retries HTTP requests. -
RetryClient.withDelays(Client inner, Iterable<
Duration> delays, {FutureOr<bool> when(BaseResponse) = _defaultWhen, FutureOr<bool> whenError(Object, StackTrace) = _defaultWhenError, FutureOr<void> onRetry(BaseRequest, BaseResponse?, int retryCount)?}) -
Like RetryClient.new, but with a pre-computed list of
delays
between each retry.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
close(
) → void -
Closes the client and cleans up any resources associated with it.
override
-
delete(
Uri url, {Map< String, String> ? headers, Object? body, Encoding? encoding}) → Future<Response> -
Sends an HTTP DELETE request with the given headers to the given URL.
inherited
-
get(
Uri url, {Map< String, String> ? headers}) → Future<Response> -
Sends an HTTP GET request with the given headers to the given URL.
inherited
-
head(
Uri url, {Map< String, String> ? headers}) → Future<Response> -
Sends an HTTP HEAD request with the given headers to the given URL.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
patch(
Uri url, {Map< String, String> ? headers, Object? body, Encoding? encoding}) → Future<Response> -
Sends an HTTP PATCH request with the given headers and body to the given
URL.
inherited
-
post(
Uri url, {Map< String, String> ? headers, Object? body, Encoding? encoding}) → Future<Response> -
Sends an HTTP POST request with the given headers and body to the given
URL.
inherited
-
put(
Uri url, {Map< String, String> ? headers, Object? body, Encoding? encoding}) → Future<Response> -
Sends an HTTP PUT request with the given headers and body to the given
URL.
inherited
-
read(
Uri url, {Map< String, String> ? headers}) → Future<String> -
Sends an HTTP GET request with the given headers to the given URL and
returns a Future that completes to the body of the response as a String.
inherited
-
readBytes(
Uri url, {Map< String, String> ? headers}) → Future<Uint8List> -
Sends an HTTP GET request with the given headers to the given URL and
returns a Future that completes to the body of the response as a list of
bytes.
inherited
-
send(
BaseRequest request) → Future< StreamedResponse> -
Sends an HTTP request and asynchronously returns the response.
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited