#文件存储 #文件上传 #图像处理 #上传 #图像 #删除文件 #绑定

imagekit

Rust API 客户端,用于 ImageKit.io 文件存储和图像处理服务

1 个不稳定版本

0.1.0-beta+12022年7月4日

#1355 in 网页编程

每月25次下载

MIT/Apache

105KB
222

ImageKit Logo

Rust API 客户端,用于 ImageKit.io 文件存储和图像处理服务

Crates.io Documentation Build Clippy Formatter Tests

用法

您必须从 ImageKit 开发者选项 获取您的公共和私人密钥。

然后创建一个 ImageKit 实例并初始化客户端。

use imagekit::ImageKit;
use imagekit::delete::Delete;
use imagekit::upload::types::FileType;
use imagekit::upload::{Options, Upload, UploadFile};
use tokio::fs::File;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let mut image_kit = ImageKit::new(
        "your_public_api_key",
        "your_private_api_key",
        "https://ik.imagekit.io/your_imagekit_id/",
    );

    // Upload an image from File
    let file = File::open("assets/ferris.jpeg").await.unwrap();
    let opts = Options::new(upload_file, "ferris");
    let upload_result = imagekit.upload(opts).await.unwrap();

    // Delete a file
    let delete_result = imagekit.delete(upload_result.file_id).await;
}

功能

这个 crate 的主要目标是支持 ImageKit 提供的三个主要功能。URL 生成、文件上传和文件管理。

以下列表提供了对支持的功能和尚未实现的功能的更深入了解。请随时通过打开问题、拉取请求或讨论来贡献。

  • URL 生成
  • 文件上传 (文件上传 API)
    • tokio::fs::File (二进制)
    • std::fs::File (二进制)
    • 从 URL
    • 从 Base64
  • 文件管理
    • 列出文件
    • 搜索文件
    • 获取文件详细信息
    • 获取文件版本
    • 获取文件元数据
    • 自定义元数据字段
      • 创建
      • 列出
      • 更新
      • 删除
    • 删除文件
    • 更新文件详细信息
    • 标签
      • 批量添加
      • 批量删除
    • AI 标签
      • 批量删除
    • 删除文件版本
    • 批量删除文件
    • 复制文件
    • 移动文件
    • 重命名文件
    • 恢复文件版本
    • 文件夹
      • 创建
      • 复制
      • 删除
      • 移动
    • 批量作业状态
    • 缓存
    • 清除

如果您注意到这个列表中缺少功能,请打开问题或 PR。

发布

要创建发布,您必须按以下方式推送 Git 标签

git tag -a <version> -m <message>

示例

git tag -a v0.1.0 -m "First release"

标签必须遵循 semver 规范 标签必须以下划线字母 v 开头。

然后按以下方式推送标签

git push origin main --follow-tags

贡献

对这个项目的每个贡献都是受欢迎的。请随时打开拉取请求、问题或只是启动此项目。

许可协议

与大多数 Rust 项目一样,这个 crate 受 Apache 许可证和 MIT 许可证的约束。

依赖关系

~6–21MB
~285K SLoC