التحقق باستخدام curl
بطلبين، تؤكد أن API Client الخاص بك يستطيع الحصول على access token وقراءة قائمة الأجهزة. تحتاج فقط إلى curl؛ لا حاجة إلى مجموعة Bruno أو SDK أو أداة سطر أوامر لمعالجة JSON.
قبل البدء
جهّز:
clientIdclientSecret- صلاحية
device:read
استخدم هذه الأوامر للتحقق المحلي فقط. يجب أن تُحمّل الخدمات في الإنتاج بيانات الاعتماد من إعداد محمي جانب الخادم أو من تخزين أسرار.
1. إنشاء access token
إذا لم يكن لديك clientId وclientSecret بعد، ابدأ بـ الحصول على API Key.
استبدل YOUR_CLIENT_ID وYOUR_CLIENT_SECRET، ثم نفّذ:
curl --request POST 'https://openapi.svnwi.com/wlte/v1/auth/token' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--data '{
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET"
}'الاستجابة الناجحة لها حالة HTTP بقيمة 200، وقيمة code تساوي SUCCESS، وaccess token في data.accessToken:
{
"code": "SUCCESS",
"message": "OK",
"data": {
"accessToken": "eyJ...",
"tokenType": "Bearer",
"expiresIn": 3600,
"clientId": "cli_xxxxx",
"scopes": ["device:read"]
}
}انسخ قيمة data.accessToken. راجع إنشاء access token (بالإنجليزية) للاطلاع على العقد الكامل.
2. سرد الأجهزة
استبدل YOUR_ACCESS_TOKEN بالرمز الذي نسخته من الاستجابة الأولى:
curl --request GET 'https://openapi.svnwi.com/wlte/v1/devices' \
--header 'Authorization: Bearer YOUR_ACCESS_TOKEN' \
--header 'Accept: application/json'ينجح التحقق عندما:
- تكون حالة HTTP هي
200 - تكون قيمة
codeفي الاستجابة هيSUCCESS - يكون
data.devicesمصفوفة (array)
حتى مصفوفة data.devices الفارغة تؤكد أن المصادقة ونقطة النهاية تعملان. عادةً ما يعني ذلك أن الحساب أو API Client لا يملك حاليًا أجهزة متاحة للوصول.
احمِ بيانات اعتمادك
- لا تحفظ طلب الرمز ببيانات اعتماد حقيقية في مستودع.
- لا تنفّذه في جلسة طرفية (terminal) مشتركة ولا تُدرجه في لقطات شاشة.
- لا تضع
clientSecretأو access token في كود المتصفح أو الجوال. - استخدم تخزين أسرار جانب الخادم بمجرد تجاوز هذا الفحص لمرة واحدة.
راجع عنوان URL الأساسي والترويسات (بالإنجليزية) للاطلاع على قواعد الأمان الخاصة بالإنتاج.
إذا فشل التحقق
| الرمز أو النتيجة | ما يجب التحقق منه |
|---|---|
AUTH_INVALID | راجع clientId وclientSecret |
APP_DISABLED | تأكّد أن API Client والتطبيق نشطان |
AUTH_SCOPE_DENIED | أضِف صلاحية device:read واحصل على رمز جديد |
data.devices فارغة | تأكّد أن الحساب يملك أجهزة وأن API Client يستطيع الوصول إليها |
للاستجابات الأخرى، راجع الأعطال الشائعة.
الخطوات التالية
- نفّذ التحقق الكامل باستخدام Bruno.
- انتقل مباشرة إلى دمج SDK.
- تعلّم كيفية بناء لوحة مراقبة للأجهزة.
