#tls-client #tls #networking #distributions #c-ffi #header #bogdanfinn-tls-client

bin+lib rust_tls_client

基于 bogdanfinn/tls-client 的 cffi 发布的 Rust TLS 客户端,设计用于与 reqwest 库一起工作,类似于 reqwest 库。自动下载最新发布版(基于系统)并存储在临时目录中。

1 个不稳定发布版

0.1.0 2024 年 4 月 22 日

#7#distributions

BSD-3-Clause

38KB
848

rust_tls_client

基于 bogdanfinn/tls-client 的 cffi 发布的 Rust TLS 客户端,设计用于与,类似于 reqwest 库一起工作。自动下载最新发布版(基于系统)并存储在临时目录中。

  • 注意:仅在 Windows 64 位上进行过测试。

用法/示例

// reqwest header map
let mut hm = HeaderMap::new();
hm.insert(ACCEPT, HeaderValue::from_static("text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9"));
hm.insert(USER_AGENT, HeaderValue::from_static("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36"));
hm.insert(ACCEPT_ENCODING, HeaderValue::from_static("gzip, deflate, br"));
hm.insert(ACCEPT_LANGUAGE, HeaderValue::from_static("de-DE,de;q=0.9,en-US;q=0.8,en;q=0.7"));

// create TlsClient instance
let client = TlsClient::new(ClientIdentifier::Chrome105, false);

// make request, in similar syntax to reqwest
let req = &client.get("https://microsoft.com")
    .headers(hm)
    .send()
    .unwrap();

println!("{}", serde_json::to_string(&req).unwrap());

依赖关系

~11–23MB
~341K SLoC