#reqwest #resolver #hickory #client #hickory-resolver #hickory-dns

reqwest-hickory-resolver

为 reqwest 提供的 hickory 解析器支持

3 个不稳定版本

0.1.0 2024 年 5 月 8 日
0.0.2 2024 年 1 月 25 日
0.0.1 2024 年 1 月 25 日

#1216 in 命令行工具

Download history 2134/week @ 2024-05-04 3138/week @ 2024-05-11 2194/week @ 2024-05-18 1877/week @ 2024-05-25 2179/week @ 2024-06-01 1619/week @ 2024-06-08 1386/week @ 2024-06-15 2094/week @ 2024-06-22 2432/week @ 2024-06-29 2325/week @ 2024-07-06 1579/week @ 2024-07-13 1941/week @ 2024-07-20 1730/week @ 2024-07-27 1865/week @ 2024-08-03 1398/week @ 2024-08-10 1474/week @ 2024-08-17

6,751 每月下载量

Apache-2.0

10KB

reqwest-hickory-resolver — 构建状态 最新版本

reqwest-hickory-resolver 是基于 hickory-dnsreqwest 解析器。

快速入门

使用 HickoryResolver 初始化客户端。

use std::sync::Arc;

use reqwest::ClientBuilder;
use reqwest_hickory_resolver::HickoryResolver;

fn init_with_hickory_resolver() -> reqwest::Result<()> {
    let mut builder = ClientBuilder::new();
    builder = builder.dns_resolver(Arc::new(HickoryResolver::default()));
    builder.build()?;
    Ok(())
}

HickoryResolver 支持缓存,我们可以跨多个客户端共享相同的解析器以获得更好的性能。

use std::sync::Arc;
use once_cell::sync::Lazy;
use reqwest::ClientBuilder;
use reqwest_hickory_resolver::HickoryResolver;

static GLOBAL_RESOLVER: Lazy<Arc<HickoryResolver>> =
    Lazy::new(|| Arc::new(HickoryResolver::default()));
    
fn init_with_hickory_resolver() -> reqwest::Result<()> {
    let mut builder = ClientBuilder::new();
    builder = builder.dns_resolver(GLOBAL_RESOLVER.clone());
    builder.build()?;
    Ok(())
}

贡献

有关如何开始为此项目做出贡献的更多详细信息,请参阅 CONTRIBUTING.md 指南。

寻求帮助

提交 问题 进行错误报告或在 讨论 中提问。

致谢

该项目基于 reqwestTrustDnsResolver

许可

Apache License, Version 2.0 下许可。

依赖项

~7–18MB
~258K SLoC