
异步版本 async/await
本包提供腾讯云对象存储(cos) 基本的操作,包括bucket创建及删除,对象的上传、下载、删除等。
上传文件支持以下特点:
How to use
use qcos::acl::{AclHeader, ObjectAcl};
use qcos::client::Client;
use qcos::objects::{mime, ErrNo, Objects};
#[tokio::main]
async fn main() {
let client = Client::new(
"Your secrect id",
"Your secrect key",
"bucket name",
"region",
);
let mut acl_header = AclHeader::new();
acl_header.insert_object_x_cos_acl(ObjectAcl::PublicRead);
let res = client.put_object("test.png", "test.png", Some(mime::IMAGE_PNG), Some(acl_header)).await;
if res.error_no == ErrNo::SUCCESS {
println!("success");
} else {
println!("{}", res.error_message);
}
#[cfg(feature = "progress-bar")]
let res = client
.clone()
.put_big_object_progress_bar(
"Cargo.toml",
"Cargo.toml",
Some(mime::TEXT_PLAIN_UTF_8),
Some(qcos::objects::StorageClassEnum::ARCHIVE),
None,
Some(1024 * 1024),
None,
None,
)
.await;
}
如果操作成功,会打印出success, 否则会打印出失败原因。
更多的例子请参考examples。
Installation
insert into your project's cargo.toml block next line
[dependencies]
qcos = "0.1.8"
如果需要开启显示进度条的方法:
[dependencies]
qcos = {version = "0.1.8", features=["progress-bar"]}