基于 qiniu-apis
提供针对七牛对象的下载功能 (同时提供阻塞客户端和异步客户端,异步客户端则需要启用 async
功能)。
ureq
toml
[dependencies]
qiniu-download-manager = { version = "0.1.3", features = ["ureq"] }
toml
[dependencies]
qiniu-download-manager = { version = "0.1.3", features = ["async", "isahc"] }
toml
[dependencies]
qiniu-download-manager = { version = "0.1.3", features = ["async", "reqwest"] }
c_ares
启用 c-ares
库作为 DNS 解析器
trust_dns
启用 trust-dns
库作为 DNS 解析器
dns-over-https
启用 trust-dns
库作为 DNS 解析器,并使用 DOH 协议
dns-over-tls
启用 trust-dns
库作为 DNS 解析器,并使用 DOT 协议
```rust use qiniudownloadmanager::{apis::credential::Credential, DownloadManager, StaticDomainsUrlsGenerator, UrlsSigner};
let bounddomain = "my-domain.com"; // 直接设置绑定的空间域名 let objectname = "test-object"; let downloadmanager = DownloadManager::new(UrlsSigner::new( Credential::new("abcdefghklmnopq", "1234567890"), StaticDomainsUrlsGenerator::builder(bounddomain) .usehttps(false) .build(), // 设置为 HTTP 协议 )); downloadmanager .download(objectname)? .topath("/home/qiniu/test.png")?; ```
```rust use qiniudownloadmanager::{ apis::{credential::Credential, http_client::BucketDomainsQueryer}, DownloadManager, EndpointsUrlGenerator, UrlsSigner, };
let bucketname = "test-bucket"; // 查询空间绑定的域名 let objectname = "test-object"; let credential = Credential::new("abcdefghklmnopq", "1234567890"); let downloadmanager = DownloadManager::new(UrlsSigner::new( credential.toowned(), EndpointsUrlGenerator::builder(BucketDomainsQueryer::new().query(credential, bucketname)) .usehttps(false) .build(), // 设置为 HTTP 协议 )); downloadmanager .asyncdownload(objectname) .await? .asyncto_path("/home/qiniu/test.png") .await?; ```
1.60.0
This project is licensed under the [MIT license].