1个不稳定版本
0.2.0 | 2023年10月14日 |
---|
#560 在 HTTP客户端
105KB
873 行
Merriam Webster HTTP
Merriam Webster词典API的HTTP客户端
示例
use std::env;
use merriam_webster_http::MerriamWebsterClient;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
tracing_subscriber::fmt::init();
let api_key = env::var("MERRIAM_WEBSTER_API_KEY")?;
let client = MerriamWebsterClient::new(api_key.into());
let defs = client
.collegiate_definition("documentation".to_string())
.await?;
let def = defs.first()
.expect(format!("No definition found for {}", word).as_str());
let shortdefs = def.shortdef.as_ref().unwrap();
println!("Short definitions for 'documentation': {shortdefs:#?}");
Ok(())
}
特性
TLS
注意:不支持在不启用任何TLS功能的情况下使用代理;Merriam Webster的API仅支持HTTPS。
注意:此TLS代码来自 twilight-http,并遵守其许可协议。
merriam-webster-http
具有启用与 hyper
的HTTPS连接的功能。这些功能互斥。默认启用 rustls-native-roots
。
本地
本地
特性使用由 hyper-tls
提供的 HTTPS 连接器。
要启用 本地
,在你的 Cargo.toml
中做如下操作:
[dependencies]
merriam-webster-http = { default-features = false, features = ["native"], version = "0.1" }
rustls-native-roots
rustls-native-roots
特性使用由 hyper-rustls
提供的 HTTPS 连接器,它使用 rustls
作为TLS后端,并启用其 native-tokio
特性,该特性使用 rustls-native-certs
进行根证书。
默认启用此功能。
rustls-webpki-roots
rustls-webpki-roots
特性使用由 hyper-rustls
提供的 HTTPS 连接器,它使用 rustls
作为TLS后端,并启用其 webpki-tokio
特性,该特性使用 webpki-roots
进行根证书。
在基于 scratch
的Docker容器中,应优先使用此功能而非 rustls-native-roots
。
信任-DNS
trust-dns
允许使用 hyper-trust-dns
,它替换了 hyper
中的默认 GaiResolver
。 hyper-trust-dns
提供了在应用程序级别的完全异步 DNS 解析器。
许可证
根据您的选择,在 Apache License, Version 2.0 或 MIT license 下获得许可。除非您明确声明,否则根据 Apache-2.0 许可证定义,您有意提交给此 crate 的任何贡献都将根据上述许可进行双重许可,而不附加任何其他条款或条件。
依赖关系
~7-20MB
~292K SLoC