#http #backoff #middleware #logging #client #exponential #http-client


HTTP client with middleware. Middleware provides composable support for record/replay, logging, exponential backoff, and more.

18 releases

Uses new Rust 2021

new 0.1.17 May 12, 2022
0.1.16 May 12, 2022
0.1.12 Mar 31, 2022
Download history 163/week @ 2022-03-15 52/week @ 2022-03-22 203/week @ 2022-03-29 34/week @ 2022-04-05 17/week @ 2022-04-12 16/week @ 2022-04-19 93/week @ 2022-04-26 87/week @ 2022-05-03 386/week @ 2022-05-10

584 downloads per month
Used in 4 crates

MIT license


GitHub Contributors Stars Build Status Downloads Crates.io


httpclient is a user-friendly http client in Rust, similar to reqwest and many others.

httpclient is under active development and is alpha quality softare. While we make effort not to change public APIs, we do not currently provide stability guarantees.

Why not reqwest?

  • reqwest objects are not serde-serializable. Having them serializable enables record/replay functionality.
  • reqwest uses it's own custom types. httpclient tries to stay close to the http library, where we directly re-use, or have simple newtypes around, http structs.
  • reqwest does not have middleware. httpclient provides powerful middleware for request recording, logging, retry, and other functionality. This functionality is user extensible.


  • Hide secrets in Recorder. Hash & Eq checks for requests must respect hidden values.


~522K SLoC