عميل SuiClient: موظف مكتب البريد في تطبيقك
- الجمهور: المطورون الجدد في سلسلة كتل Sui.
- المتطلبات الأساسية: فهم أساسي لمفاهيم البلوك تشين (المحافظ، المعاملات).
- الهدف: فهم دور
SuiClientفي بنية التطبيق.
مقدمة
في نظام Sui البيئي، لا يمكن لتطبيقك التحدث مباشرة إلى شبكة البلوك تشين. فهو يتطلب وسيطًا للتعامل مع بروتوكولات الاتصال، وجلب البيانات، وإرسال المعاملات.
SuiClient هي الواجهة الأساسية في حزمة Sui TypeScript SDK لهذا الغرض.
الهندسة المعمارية: تشبيه "مكتب البريد"
فكر في شبكة Sui كنظام بريدي عالمي ضخم.
- تطبيقك هو عميل في مكتب البريد.
SuiClientهو موظف مكتب البريد.
أنت تعتمد على الموظف للتفاعل مع النظام. لا يمكنك فرز البريد أو قيادة شاحنات التوصيل بنفسك؛ يجب عليك تقديم الطلبات من خلال الموظف.
- صورة
- الرمز
- ASCII
flowchart LR
A["تطبيقك<br/>(العميل)"] -->|يطلب الخدمة| B("SuiClient<br/>(الموظف)")
B -->|يعالج الطلب| C["عقدة شبكة Sui<br/>(النظام البريدي)"]
C -->|يسلم النتيجة| B
B -->|يسلم العنصر| A
┌──────────────┐ يطلب الخدمة ┌──────────────┐ يعالج الطلب ┌──────────────────┐
│ تطبيقك │─────────────────► │ SuiClient │─────────────────► │ عقدة شبكة Sui │
│ (العميل) │◄───────────────── │ (الموظف) │◄───────────────── │ (النظام البريدي)│
└──────────────┘ يسلم العنصر └──────────────┘ يسلم النتيجة └──────────────────┘
الاتصال بالشبكة
تمامًا كما يعمل موظف في فرع معين، يتصل مثيل SuiClient ببيئة شبكة محددة عبر نقطة نهاية استدعاء الإجراء عن بعد (RPC).
عند تهيئة العميل، تحدد البيئة المستهدفة:
| الشبكة | الوصف | حالة الاستخدام |
|---|---|---|
| Mainnet | شبكة الإنتاج المباشرة. أصول حقيقية، قيمة حقيقية. | تطبيقات الإنتاج. |
| Testnet | شبكة اختبار عامة. تعكس إصدار Mainnet. | اختبار التدريج والتكامل. |
| Devnet | شبكة تجريبية. يتم إعادة تعيينها بشكل متكرر. | النماذج الأولية السريعة والاختبار العام. |
| Localnet | شبكة اختبار محلية تعمل على جهازك. | التطوير والاختبار دون اتصال بالإنترنت. |
القدرات الأساسية
يتعامل SuiClient مع فئتين متميزتين من العمليات. فهم الفرق أمر بالغ الأهمية لتصميم التطبيق.
1. عمليات القراءة (الاستعلامات)
هذه طلبات للبحث عن البيانات الموجودة في دفتر الأستاذ.
- التكلفة: مجانية (بدون رسوم غاز).
- الأمان: لا يتطلب توقيع المحفظة.
- الآلية: يستعلم العميل عن قاعدة البيانات المحلية للعقدة ويعيد النتيجة على الفور.
- الأمثلة:
getObject(): جلب بيانات تعريف NFT.getBalance(): التحقق من أموال المحفظة.
2. عمليات الكتابة (المعاملات)
هذه هي طلبات تغيير حالة دفتر الأستاذ.
- التكلفة: تتطلب رموز SUI (المقاسة بـ MIST) لرسوم الغاز.
- الأمان: تتطلب توقيعًا مشفرًا من محفظة المستخدم.
- الآلية: يرسل العميل المعاملة الموقعة عبر عقدة RPC الكاملة، والتي تنقلها إلى شبكة المدققين للتنفيذ والإجماع.
- الأمثلة:
- تحويل العملات.
- سك رموز NFTs.
- تعديل بيانات اللعبة على السلسلة.
الخطوات التالية
الآن بعد أن فهمت البنية الهيكلية، فإن الخطوة التالية هي إجراء عملية قراءة. يوفر الدليل التالي، كيفية جلب بيانات الكائنات، برنامجًا نصيًا للاستعلام عن البيانات الحية من شبكة devnet الخاصة بـ Sui.