29 个版本 (13 个破坏性更新)

0.14.0 2024 年 4 月 11 日
0.13.0 2024 年 1 月 15 日
0.12.0 2023 年 11 月 1 日
0.11.1 2023 年 7 月 29 日
0.4.1 2022 年 3 月 29 日

#88 in HTTP 客户端

Download history 8329/week @ 2024-04-15 5946/week @ 2024-04-22 5780/week @ 2024-04-29 6215/week @ 2024-05-06 5491/week @ 2024-05-13 5752/week @ 2024-05-20 6227/week @ 2024-05-27 5971/week @ 2024-06-03 7626/week @ 2024-06-10 6215/week @ 2024-06-17 5265/week @ 2024-06-24 4257/week @ 2024-07-01 4841/week @ 2024-07-08 5041/week @ 2024-07-15 6186/week @ 2024-07-22 7459/week @ 2024-07-29

每月 23,757 次下载
用于 28 个 Crates (19 个直接使用)

MIT/Apache

76KB
1.5K SLoC

http-cache-reqwest

CI Crates.io Docs.rs Codecov Crates.io

the http-cache logo

遵循 HTTP 缓存规则的缓存中间件,得益于 http-cache-semantics。默认情况下,它使用 cacache 作为后端缓存管理器。使用 reqwest-middleware 以支持中间件。

最低支持的 Rust 版本 (MSRV)

1.67.1

安装

已安装 cargo add

cargo add http-cache-reqwest

示例

use reqwest::Client;
use reqwest_middleware::{ClientBuilder, Result};
use http_cache_reqwest::{Cache, CacheMode, CACacheManager, HttpCache, HttpCacheOptions};

#[tokio::main]
async fn main() -> Result<()> {
    let client = ClientBuilder::new(Client::new())
        .with(Cache(HttpCache {
          mode: CacheMode::Default,
          manager: CACacheManager::default(),
          options: HttpCacheOptions::default(),
        }))
        .build();
    client
        .get("https://mdn.org.cn/en-US/docs/Web/HTTP/Caching")
        .send()
        .await?;
    Ok(())
}

功能

以下功能可用。默认情况下 manager-cacache 已启用。

  • manager-cacache (默认): 启用 cacache,一个高性能的磁盘缓存后端管理器。
  • manager-moka (禁用): 启用 moka,一个高性能的内存缓存后端管理器。

文档

许可

根据您的选择,许可以下任一项

贡献

除非您明确声明,否则根据Apache-2.0许可定义的,您有意提交以包含在作品中的任何贡献,将双授权如上所述,没有任何附加条款或条件。

依赖项

~4–36MB
~579K SLoC