SDK ทางการสำหรับ Rust
Crate แบบอะซิงโครนัสประสิทธิภาพสูงบน Tokio สำหรับภาษา Rust
Crate ประสิทธิภาพสูงที่ทำงานร่วมกับ Tokio และ Reqwest โดยไม่มีต้นทุนทางประสิทธิภาพแอบแฝง (zero-cost abstractions)
การติดตั้ง
TOML
[dependencies]smallpict = "1.2"tokio = { version = "1", features = ["full"] }ตัวอย่างโค้ดฉบับสมบูรณ์
Rust
use smallpict::{Client, OptimizeOptions, Format};use std::fs;
#[tokio::main]async fn main() -> Result<(), Box<dyn std::error::Error>> { let client = Client::new( std::env::var("SMALLPICT_API_KEY")?, std::env::var("SMALLPICT_SECRET_KEY")?, );
let bytes = fs::read("photo.jpg")?;
let res = client.optimize(&bytes, "photo.jpg", OptimizeOptions { format: Format::Avif, quality: 80, ..Default::default() }).await?;
println!("URL รูปภาพ: {}", res.url); println!("ประหยัดได้: {:.2}%", res.savings_percentage);
Ok(())}