7 个版本

0.2.1 2020年9月1日
0.2.0 2020年8月19日
0.1.4 2020年7月24日

#25 in #file-upload

MIT 许可证

76KB
1.5K SLoC

Uploadcare 的 Rust API 客户端

License rest Documentation Crates

Uploadcare Rust API 客户端,通过封装 Uploadcare Upload 和 REST API 来处理文件的上传和后续操作。

要求

rustc 1.43
cargo 1.43

安装

[dependencies]
uploadcare = "^0.1"

功能标志

默认情况下启用了 full(REST 和 Upload API)。

为了减小代码大小,禁用默认功能并仅启用您使用的 API

# Example: REST API only
uploadcare = { version = "*", default-features = false, features = ["rest"] }

配置

use ucare;
use ucare::file;
use ucare::upload;

let creds = ucare::apicreds {
    secret_key: "your_project_secret_key",
    pub_key: "your_project_pub_key",
};

// creating rest client
let config = ucare::RestConfig {
    sign_based_auth: true,
    api_version: ucare::RestApiVersion::v06,
};
let rest_client = ucare::RestClient::new(config, creds).unwrap();

// creating upload client
let config = ucare::UploadConfig {
    sign_based_upload: true,
};
let upload_client = ucare::UploadClient::new(config, creds).unwrap();

使用

有关示例的完整列表,请查看 API 文档。下面是一些使用示例

let file_svc = file::new_svc(&rest_client);

let file_id = "b7c1bf20-0f4c-4ba4-b3a8-a74ebc663752";
let file_info = file_svc.info(file_id).unwrap();
println!("{}: {:?}", file_id, file_info);

let upload_svc = upload::new_svc(&upload_client);

let params = upload::FileParams {
    path: "/path/to/file".to_string(),
    name: "filename".to_string(),
    to_store: Some(upload::ToStore::Auto),
};
let file = upload_svc.file(params).unwrap();
println!("uploaded: {:?}", file.id);

Rust API 客户端文档
Uploadcare 文档
Upload API 参考
REST API 参考
变更日志
贡献指南
安全策略
支持

依赖

~8–13MB
~247K SLoC