3 releases

0.1.2 Jan 6, 2024
0.1.1 Aug 7, 2022
0.1.0 Aug 7, 2022

#513 in HTTP client

Download history 9/week @ 2024-07-14 22/week @ 2024-07-21 21/week @ 2024-07-28 10/week @ 2024-08-04 4/week @ 2024-08-11 5/week @ 2024-08-18 11/week @ 2024-08-25 4/week @ 2024-09-01 5/week @ 2024-09-08 9/week @ 2024-09-15 23/week @ 2024-09-22 32/week @ 2024-09-29 6/week @ 2024-10-06 13/week @ 2024-10-13 66/week @ 2024-10-20 18/week @ 2024-10-27

103 downloads per month
Used in gha-toolkit

MIT license

9KB
112 lines

reqwest-retry-after

Crates.io docs.rs Crates.io

reqwest-retry-after is a library that adds support for the Retry-After header in reqwest, using reqwest_middleware.

Usage

Simply pass RetryAfterMiddleware to the ClientWithMiddleware builder.

use reqwest_middleware::{ClientBuilder, ClientWithMiddleware};
use reqwest_retry_after::RetryAfterMiddleware;

let client = ClientBuilder::new(reqwest::Client::new())
    .with(RetryAfterMiddleware::new())
    .build();

lib.rs:

reqwest-retry-after

reqwest-retry-after is a library that adds support for the Retry-After header in reqwest, using reqwest_middleware.

Usage

Simply pass RetryAfterMiddleware to the ClientWithMiddleware builder.

use reqwest_middleware::{ClientBuilder, ClientWithMiddleware};
use reqwest_retry_after::RetryAfterMiddleware;

let client = ClientBuilder::new(reqwest::Client::new())
    .with(RetryAfterMiddleware::new())
    .build();

Notes

A client constructed with RetryAfterMiddleware will apply the Retry-After header to all future requests, regardless of domain or URL. This means that if you query one URL which sets a Retry-After, and then query a different URL that has no ratelimiting, the Retry-After will be applied to the new URL.

If you need this functionality, consider creating a seperate client for each endpoint.

Dependencies

~7–18MB
~256K SLoC