يتيح واجهة برمجة التطبيقات (API) لـ Antcas Hub تبادل البيانات بين تطبيقات متعددة.
| تحذير: انتبه إلى الأمن عند استخدام هذه الواجهة. استخدم فقط TLS ولا تستخدم أبدًا هذا الميناء على عنوان عام. |
ملاحظة: نظرًا لأن واجهة برمجة التطبيقات يجب أن تحقق من الرمز المميز عند كل استدعاء، فقد يؤدي ذلك إلى زيادة الحمل على النظام.
يمكنك إضافة ميناء API جديد في إدارة المشروع. يمكنك العثور على الوصف في الفصل تعيين الميناء للمشروع.
لإنشاء طلب، يجب أن يتم التحقق منه باستخدام الرمز المميز. يتم شرح إنشاء الرمز المميز بشكل مفصل في الفصل إدارة الرموز المميزة.
يدعم واجهة برمجة التطبيقات تنسيقات إدخال متعددة: استعلامات HTTP، JSON وXML. يمكن أن تكون الإخراج من HTML أو نص أو JSON أو XML. ترميز الأحرف هو دائمًا UTF-8.
ملاحظة: يؤدي استدعاء عنصر في المتصفح إلى خطأ 428 (Precondition Required). هذا هو حماية ضد هجمات XSS، ولا يمكن تجاوزها. يمنع هذه الحماية هجومًا على Antcas Hub.
في حالة طلب POST أو PUT، يمكن كتابة البيانات عبر المحتوى بالتنسيق المناسب. كل متغير حساس لحالة الحروف، مما يعني أن هناك فرق بين الأحرف الكبيرة والصغيرة. ومع ذلك، يتم دائمًا إرجاع الإخراج بالتنسيق المحدد. يمكن وصف تنسيق الإخراج عبر الرأس أو عبر المتغير format. يتم التعرف على تنسيق الإدخال تلقائيًا.
GET /visu/var/eid?format=json&token=tokenid HTTP/1.1
Host: serveraddr.com
Content-Type: application/json
التنسيقات التالية مدعومة في الرأس والمتغير format:
| Content-Type | المتغير | التنسيق |
|---|---|---|
| application/json | json | JSON |
| application/xml | xml | XML |
| text/plain | text | نص |
| text/csv | csv | CSV* |
| (أخرى) | html | HTML |
*يدعم فقط كتنسيق إخراج.
ملاحظة: تحتوي التنسيقات النصية وCSV على UTF-8 BOM. يمكن تعطيلها باستخدام المتغير bom=FALSE.
إذا تم وصف قيمة عبر تنسيقات متعددة، فإن الأخير له الأولوية:
المتغيرات التالية محددة عالميًا.
| المتغير | الوصف |
|---|---|
| format | تنسيق الإخراج. |
| bom | BOM في تنسيق UTF-8. القيمة الافتراضية هي TRUE. |
| key | قراءة متغير واحد فقط تم تحديده. هذه الطريقة غير كفؤة، حيث يتم إعداد جميع البيانات أولاً ثم ترشيحها بعد ذلك. يجب استخدامها فقط مع كميات صغيرة من البيانات. |
| header | إخراج الرأس. القيمة الافتراضية هي TRUE. |
| compact | جمع جميع العناصر الفرعية في نفسها. إذا لم يتم تحديد قيمة منطقية، فسيتم استخدام هذه القيمة لدمج المتغيرات. وإلا، سيتم استخدام القيمة .. |
| values | إرجاع القيم فقط وليس أسماء المتغيرات. هذه الخيار متاح فقط مع HTML وCSV والنص. |
| minimal | اسم بديل لـ header=FALSE, compact=minimal وvalues=TRUE. |
| csvdel | فاصل CSV. القيمة الافتراضية هي ; |
| csvenc | أقواس إحاطة CSV. القيمة الافتراضية هي " |
| csvesc | رمز فرار CSV. القيمة الافتراضية هي \ |
المتغيرات التالية يمكن استخدامها عالميًا، وكذلك لمتغيرات فردية. لتحديد متغير واحد، يتم تعريفه كما يلي:
time*:hr=true
النموذج السابق يشير إلى جميع المتغيرات التي تبدأ بـ time وtime نفسها. يتم التحقق من جميع القواعد واحدة تلو الأخرى. لذلك، تكون الأخيرة مناسبة لها الأولوية. يتم البحث باستخدام تعبيرات منتظمة.
| المتغير | الوصف |
|---|---|
| hr | قابل للقراءة من قبل الإنسان. يتم تحويل المتغيرات، إذا كان ذلك ممكنًا، إلى بيانات قابلة للقراءة من قبل الإنسان. القيمة الافتراضية هي TRUE لتنسيق HTML وCSV والنص. |
| numdec | عدد الأرقام بعد الفاصلة. |
| numths | فاصل ألفيات. |
| numdot | فاصل عشري. |
| prefix | إضافة نص قبل المتغير. |
| suffix | إضافة نص بعد المتغير. |
في الفصول السفلية، يتم تعريف جميع تطبيقات واجهة برمجة التطبيقات.