#object-storage #cloud-storage #cos #tencent-cloud #async-await #tengxunyun

qcos

provide basic interface encapsulation of Tencent Cloud Object Storage (cos)

7 releases

0.1.6 Oct 16, 2022
0.1.5 Apr 7, 2022

#2 in #tencent-cloud

Download history 12/week @ 2023-11-27 2/week @ 2023-12-04 6/week @ 2023-12-18 7/week @ 2024-01-01 9/week @ 2024-01-08 3/week @ 2024-01-22 11/week @ 2024-02-19 39/week @ 2024-02-26 44/week @ 2024-03-04 21/week @ 2024-03-11

115 downloads per month
Used in qcloud

MIT license

64KB
1.5K SLoC

qcos

异步版本 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", mime::IMAGE_PNG, Some(&acl_header)).await;
    if res.error_no == ErrNo::SUCCESS {
        println!("success");
    } else {
        println!("{}", res.error_message);
    }
}

如果操作成功,会打印出success, 否则会打印出失败原因。

更多的例子请参考examples

Installation

insert into your project's cargo.toml block next line

[dependencies]
qcos = "0.1.6"

Dependencies

~14–28MB
~522K SLoC