3 releases

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

#215 in HTTP client

Download history 175/week @ 2024-01-05 37/week @ 2024-01-12 13/week @ 2024-01-19 5/week @ 2024-01-26 4/week @ 2024-02-02 77/week @ 2024-02-09 48/week @ 2024-02-16 85/week @ 2024-02-23 50/week @ 2024-03-01 50/week @ 2024-03-08 56/week @ 2024-03-15 28/week @ 2024-03-22 65/week @ 2024-03-29 21/week @ 2024-04-05 23/week @ 2024-04-12 13/week @ 2024-04-19

125 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

~6–21MB
~291K SLoC