1 个不稳定版本

0.12.4 2024年6月5日

#255HTTP客户端


用于 signalrs-client-custom-au…

MIT/Apache

625KB
12K SLoC

reqwest

crates.io Documentation MIT/Apache-2 licensed CI

Rust的易用、功能齐全的HTTP客户端。

  • 异步和阻塞 Client
  • 普通正文、JSON、urlencoded、multipart
  • 可定制的重定向策略
  • HTTP代理
  • 通过系统原生TLS (或可选的,rustls) 进行HTTPS
  • Cookie存储
  • WASM

示例

此异步示例使用Tokio并启用了一些可选功能,因此您的Cargo.toml可能如下所示

[dependencies]
reqwest = { version = "0.12", features = ["json"] }
tokio = { version = "1", features = ["full"] }

然后是代码

use std::collections::HashMap;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let resp = reqwest::get("https://httpbin.org/ip")
        .await?
        .json::<HashMap<String, String>>()
        .await?;
    println!("{resp:#?}");
    Ok(())
}

商业支持

对于私人建议、支持、审查、访问维护者等,请联系商业支持

要求

在Linux上

  • 带有头文件的OpenSSL。有关支持的版本和更多详细信息,请参阅https://docs.rs/openssl。或者,您可以通过启用native-tls-vendored功能来编译OpenSSL的副本。

在Windows和macOS上

  • 无。

Reqwest使用rust-native-tls,如果可用,它将使用操作系统TLS框架,即Windows和macOS。在Linux上,它将使用可用的OpenSSL或如果找不到将无法构建。

许可

根据以下之一许可

贡献

除非您明确声明,否则您有意提交以包含在本作品中的任何贡献,根据Apache-2.0许可证的定义,应按上述方式双重许可,不附加任何额外条款或条件。

赞助商

通过成为赞助商来支持此项目。

依赖关系

~3-22MB
~412K SLoC