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

rust-qcos

提供腾讯云对象存储(cos)的基本接口封装

1 个不稳定版本

0.0.2 2024年4月23日

#3 in #tencent-cloud

MIT 许可证

62KB
1.5K SLoC

qcos

异步版本 async/await

本包提供腾讯云对象存储(cos)的基本操作,包括bucket的创建及删除,对象的上传(支持分块传输)、下载、删除等。后续有时间会补充其他接口的实现。

使用方法

use rust-qcos::acl::{AclHeader, ObjectAcl};
use rust-qcos::client::Client;
use rust-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 data = std::fs::read("test.png").unwrap();
    let res = client.put_object(mime::IMAGE_PNG, "test.png", data, Some(&acl_header)).await;
    if res.error_no == ErrNo::SUCCESS {
        println!("success");
    } else {
        println!("{}", res.error_message);
    }
}

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

安装

在项目的 cargo.toml 文件中插入以下行

[dependencies]
rust-qcos = "0.0.2"

依赖

~13–26MB
~498K SLoC