9个版本

0.2.7 2024年8月15日
0.2.6 2024年8月15日
0.2.3 2024年7月21日
0.1.2 2024年7月15日

#154HTTP客户端

Download history 296/week @ 2024-07-15 27/week @ 2024-07-22 35/week @ 2024-07-29 95/week @ 2024-08-05 333/week @ 2024-08-12

每月 552 次下载

MIT/Apache

26KB
568

Gyazo客户端用于Rust

一个用于与Gyazo API交互的Rust库。高效地上传、检索、列出和删除Gyazo上的图片。

ci crates.io docs.rs license

功能

  • 上传、检索、列出和删除图片
  • 使用tokio和reqwest的异步API
  • 自定义错误处理

安装

cargo add gyazo_client

用法

use gyazo_client::{GyazoClient, UploadParams, UploadParamsBuilder};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Initialize the Gyazo client with your access token
    let gyazo_client = GyazoClient::new("YOUR_ACCESS_TOKEN".to_string(), ..Default::default());

    // Upload an image with a title and metadata_is_public
    let image_data = std::fs::read("path/to/your/image.png")?;
    let upload_params = UploadParamsBuilder::new(image_data)
        .title("My awesome image".to_string())
        .metadata_is_public("true".to_string())
        .build()?;
    let upload_response = gyazo_client.upload_image(upload_params).await?;

    // Get image
    let image = gyazo_client.get_image(&upload_response.image_id).await?;

    // List images
    let images = gyazo_client.list_images().await?;

    // Delete an image
    let delete_response = gyazo_client.delete_image(&upload_response.image_id).await?;

    // Get oEmbed data
    let oembed_url = gyazo_client.get_oembed(&upload_response.image_id).await?;

    Ok(())
}

参考

依赖

~4–15MB
~215K SLoC