MyID SDK — Rust Client
⚠️ Diqqat: Ushbu kutubxona hozirda faol ishlab chiqilish jarayonida (Work in Progress). API o'zgarishi mumkin. Production muhitida hali tayor emas. Xatolar va takliflar uchun GitHub Issues orqali murojaat qiling.
O'zbekiston Respublikasi MyID identifikatsiya tizimi uchun rasmiy bo'lmagan Rust SDK kutubxonasi.
Imkoniyatlar
- OAuth 2.0 autentifikatsiya
- Type-safe konfiguratsiya — compile-time'da URL validatsiyasi
- Async/await —
tokioruntime bilan to'liq asinxron ishlash - Xavfsizlik —
client_secretdebug output'da avtomatik yashiriladi - Thread-safe —
Send + Synccompile-time kafolati
O'rnatish
[]
= "0.1.2"
Tez boshlash
use Config;
use MyIdResult;
Konfiguratsiya
Config — SDK ning asosiy konfiguratsiya strukturasi. 3 ta majburiy parametr va
ixtiyoriy sozlamalar mavjud:
use Duration;
use Config;
# use MyIdResult;
#
Default qiymatlar
| Parametr | Default | Metod |
|---|---|---|
| HTTP timeout | 15 soniya | with_timeout() |
| Connection timeout | 2 soniya | with_connect_timeout() |
| User-Agent | myid-client-rust/0.1 |
with_user_agent() |
| Proxy | None |
with_proxy() |
Xatolarni boshqarish
Barcha xatolar MyIdError enum orqali qaytariladi:
use Config;
use MyIdError;
match new
Xavfsizlik
client_secretfaqat backend muhitida saqlangDebugoutput'da secret avtomatik<redacted>sifatida ko'rsatiladi- Frontend yoki client-side kodda ishlatmang
- Production'da credential'larni environment variable orqali bering
# use Config;
# use MyIdResult;
#
Misollar
# Config yaratish misoli
Minimal Rust versiyasi (MSRV)
Rust 1.93.0 yoki undan yuqori talab qilinadi.
Litsenziya
Ushbu loyiha ikki litsenziya ostida tarqatiladi — o'zingizga qulayini tanlang:
Batafsil ma'lumot uchun tegishli litsenziya fayllarini ko'ring.