1 个不稳定版本
0.12.4 | 2024年6月5日 |
---|
#255 在 HTTP客户端
625KB
12K SLoC
reqwest
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版 (LICENSE-APACHE 或 http://apache.org/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT 或 http://opensource.org/licenses/MIT)
贡献
除非您明确声明,否则您有意提交以包含在本作品中的任何贡献,根据Apache-2.0许可证的定义,应按上述方式双重许可,不附加任何额外条款或条件。
赞助商
通过成为赞助商来支持此项目。
依赖关系
~3-22MB
~412K SLoC