رفتن به محتوای اصلی
فهرست مستندات
تولیدکننده SDK

استفاده از SDKهای Rust تولیدشده در Postman

به‌روزرسانی ۲ دقیقه مطالعه Postman

فهرست مطالب
  1. ساختار SDK Rust
  2. Type safety با Serde
  3. Optional و nullable fieldها
  4. Error handling
  5. اجرای نمونه SDK
  6. نصب SDK Rust
  7. نصب با Cargo
  8. نصب از مسیر local
  9. نصب از Git repository
  10. انتشار در crates.io
  11. بهترین کارها برای Rust SDK
  12. Advanced configuration
  13. منابع داخل SDK

این راهنما روش استفاده از SDKهای Rust تولیدشده با Postman SDK Generator را توضیح می‌دهد. SDK Rust روی type safety، serialization با Serde، error handling صریح، نصب با Cargo و انتشار در crates.io تمرکز دارد.

ساختار SDK Rust

  • src/lib.rs: نقطه ورود crate و exportهای اصلی.
  • src/client.rs: client اصلی SDK.
  • src/services/: serviceها برای endpointها.
  • src/models/: structها و enumهای request/response.
  • src/error.rs: error typeهای SDK.
  • Cargo.toml: metadata، featureها و dependencyها.

Type safety با Serde

مدل‌های Rust با typeهای مشخص و deriveهای Serde ساخته می‌شوند. این کار باعث می‌شود serialization و deserialization از JSON با کنترل compile-time و runtime انجام شود.

use serde::{Serialize, Deserialize};

#[derive(Debug, Serialize, Deserialize)]
pub struct User {
    pub id: String,
    pub email: String,
}

Optional و nullable fieldها

در Rust معمولا Option<T> برای fieldهای optional یا nullable استفاده می‌شود. این کمک می‌کند تفاوت بین نبودن مقدار و داشتن مقدار مشخص روشن باشد.

Error handling

SDKهای Rust معمولا از Result<T, E> استفاده می‌کنند و خطا را صریح به caller برمی‌گردانند.

اجرای نمونه SDK

cd examples
cargo run
use your_sdk::{Client, Config};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = Client::new(Config {
        api_key: Some("your-api-key".to_string()),
        base_url: Some("https://api.example.com".to_string()),
        ..Default::default()
    });

    let user = client.users().get_user("123").await?;
    println!("User: {:?}", user);

    Ok(())
}

نصب SDK Rust

نصب با Cargo

cargo add your-sdk

نصب از مسیر local

[dependencies]
your-sdk = { path = "../path/to/your-sdk" }

نصب از Git repository

[dependencies]
your-sdk = { git = "https://github.com/your-org/your-sdk", tag = "v1.0.0" }

انتشار در crates.io

برای انتشار، حساب crates.io، API token و metadata کامل در Cargo.toml لازم است.

[package]
name = "your-sdk"
version = "1.0.0"
edition = "2021"
description = "SDK for Your API"
license = "MIT"
repository = "https://github.com/your-org/your-sdk"
readme = "README.md"
cargo login YOUR_TOKEN
cargo package
cargo publish

برای نسخه جدید، version را بالا ببرید و دوباره publish کنید.

cargo publish

بهترین کارها برای Rust SDK

  • قبل از انتشار cargo test، cargo clippy و cargo fmt را اجرا کنید.
  • feature flagها را شفاف نام‌گذاری کنید.
  • README و examples را کامل نگه دارید.
  • از semantic versioning استفاده کنید.
  • error typeهای واضح و قابل match کردن ارائه دهید.

Advanced configuration

بسته به خروجی generator، می‌توانید authentication، base URL، timeout، retry و transport را از طریق config تنظیم کنید.

let config = Config {
    api_key: Some("your-api-key".to_string()),
    base_url: Some("https://custom.api.example.com".to_string()),
    timeout_ms: Some(10_000),
    ..Default::default()
};

منابع داخل SDK

  • پوشه documentation/ برای serviceها و modelها.
  • پوشه examples/ برای نمونه‌های async قابل اجرا.
  • Cargo.toml برای featureها و dependencyها.
  • مدل‌های Serde و error typeهای SDK.

منبع آموزشی: Postman Docs، بازنویسی و ساده‌سازی‌شده برای کاربران فارسی‌زبان.

ایستگاه بعدی شما

TestRail را همین حالا در محیط دمو ببینید.

محیط تست آماده

دسترسی به دمو TestRail

قبل از ورود، مشخصات زیر را در صفحه ورود محیط دمو وارد کنید.

آدرس دمو

https://demo.testrail.ir

ایمیل ورود

demo@testrail.ir

رمز عبور

demo_user