
ما هي واجهة برمجة التطبيقات API؟
واجهات برمجة التطبيقات (APIs) هي آليات تمكن مكونين من البرامج من التواصل مع بعضهما البعض باستخدام مجموعة من التعريفات والبروتوكولات. على سبيل المثال، يحتوي نظام برمجيات مكتب الأرصاد الجوية على بيانات الطقس اليومية. “يتحدث” تطبيق الطقس الموجود على هاتفك مع هذا النظام عبر واجهات برمجة التطبيقات ويعرض لك تحديثات الطقس اليومية على هاتفك.
ما الذي تعنيه واجهة برمجة التطبيقات (API)؟
API تعني واجهة برمجة التطبيقات ( -Application Programming Interface -API) ، تشير كلمة التطبيق إلى أي برنامج له وظيفة مميزة. يمكن اعتبار الواجهة بمثابة عقد خدمة بين تطبيقين. يحدد هذا العقد كيفية تواصل الاثنين مع بعضهما البعض باستخدام الطلبات والاستجابات. تحتوي وثائق واجهة برمجة التطبيقات (API) الخاصة بهم على معلومات حول كيفية قيام المطورين ببناء تلك الطلبات والاستجابات.
كيف تعمل واجهات برمجة التطبيقات؟
عادة ما يتم شرح بنية واجهة برمجة التطبيقات (API) من حيث العميل (client ) والخادم (server) . يُطلق على التطبيق الذي يرسل الطلب اسم العميل، ويُسمى التطبيق الذي يرسل الاستجابة بالخادم. لذلك في مثال الطقس، قاعدة بيانات الطقس الخاصة بالمكتب هي الخادم، وتطبيق الهاتف المحمول هو العميل.
هناك أربع طرق مختلفة يمكن لواجهات برمجة التطبيقات أن تعمل بها اعتمادًا على وقت وسبب إنشائها.
واجهات برمجة تطبيقات SOAP
تستخدم واجهات برمجة التطبيقات هذه بروتوكول الوصول إلى الكائنات البسيطة (Simple Object Access Protocol(SOAP)) . تبادل رسائل العميل والخادم باستخدام XML. هذه واجهة برمجة تطبيقات أقل مرونة وكانت أكثر شيوعًا في الماضي.
واجهات برمجة تطبيقات RPC
تسمى واجهات برمجة التطبيقات هذه باستدعاءات الإجراءات عن بعد (Remote Procedure Calls(RPC)). يكمل العميل وظيفة (أو إجراء) على الخادم، ويرسل الخادم الإخراج مرة أخرى إلى العميل.
واجهات برمجة تطبيقات Websocket API
Websocket API هو تطوير حديث آخر لواجهة برمجة تطبيقات الويب يستخدم كائنات JSON لتمرير البيانات. تدعم واجهة WebSocket API الاتصال ثنائي الاتجاه بين تطبيقات العميل والخادم. يمكن للخادم إرسال رسائل رد الاتصال إلى العملاء المتصلين، مما يجعله أكثر كفاءة من REST API.
واجهات برمجة تطبيقات REST
هذه هي واجهات برمجة التطبيقات الأكثر شيوعًا ومرونة الموجودة على الويب اليوم. يرسل العميل الطلبات إلى الخادم كبيانات. يستخدم الخادم إدخال العميل هذا لبدء الوظائف الداخلية وإرجاع بيانات الإخراج مرة أخرى إلى العميل. دعونا نلقي نظرة على واجهات برمجة تطبيقات REST بمزيد من التفاصيل أدناه.
ما هي واجهات برمجة تطبيقات REST؟
REST تعني نقل الحالة التمثيلية (statelessness) . يحدد REST مجموعة من الوظائف مثل GET وPUT وDELETE وما إلى ذلك والتي يمكن للعملاء استخدامها للوصول إلى بيانات الخادم. يقوم العملاء والخوادم بتبادل البيانات باستخدام HTTP. السمة الرئيسية لـ REST API هي انعدام الجنسية. يعني انعدام الحالة أن الخوادم لا تحفظ بيانات العميل بين الطلبات. تشبه طلبات العميل إلى الخادم عناوين URL التي تكتبها في متصفحك لزيارة موقع ويب. وتكون الاستجابة من الخادم عبارة عن بيانات عادية، دون العرض الرسومي النموذجي لصفحة الويب.
ما هي واجهة برمجة تطبيقات الويب (Web API) ؟
واجهة برمجة تطبيقات الويب (Web API) أو واجهة برمجة تطبيقات خدمة الويب (Web Service API) هي واجهة معالجة التطبيقات بين خادم الويب ومتصفح الويب. جميع خدمات الويب هي واجهات برمجة التطبيقات (APIs) ولكن ليست كل واجهات برمجة التطبيقات (APIs) هي خدمات ويب. REST API هو نوع خاص من Web API يستخدم النمط المعماري القياسي .المصطلحات المختلفة حول واجهات برمجة التطبيقات، مثل Java API أو واجهات برمجة تطبيقات الخدمة، موجودة لأنه تاريخيًا، تم إنشاء واجهات برمجة التطبيقات قبل شبكة الويب العالمية. واجهات برمجة تطبيقات الويب الحديثة هي واجهات برمجة تطبيقات REST ويمكن استخدام المصطلحات بالتبادل.
ما هي تكاملات API؟
تعد عمليات تكامل واجهة برمجة التطبيقات ( integrations API ) بمثابة مكونات برمجية تقوم تلقائيًا بتحديث البيانات بين العملاء والخوادم. بعض الأمثلة على تكامل واجهة برمجة التطبيقات (API) هي عند مزامنة البيانات تلقائيًا مع السحابة من معرض صور هاتفك، أو مزامنة الوقت والتاريخ تلقائيًا على الكمبيوتر المحمول الخاص بك عند السفر إلى منطقة زمنية أخرى. يمكن للمؤسسات أيضًا استخدامها لأتمتة العديد من وظائف النظام بكفاءة.
ما هي الأنواع المختلفة لواجهات برمجة التطبيقات؟
يتم تصنيف واجهات برمجة التطبيقات وفقًا لبنيتها ونطاق استخدامها. لقد استكشفنا بالفعل الأنواع الرئيسية لبنيات واجهة برمجة التطبيقات (API)، لذا دعونا نلقي نظرة على نطاق الاستخدام.
*واجهات برمجة التطبيقات الخاصة Private APIs
وهي داخلية للمؤسسة وتستخدم فقط لربط الأنظمة والبيانات داخل الشركة.
*واجهات برمجة التطبيقات العامة Public APIs
هذه مفتوحة للجمهور ويمكن لأي شخص استخدامها. قد يكون هناك أو لا يوجد بعض التفويض والتكلفة المرتبطة بهذه الأنواع من واجهات برمجة التطبيقات.
واجهات برمجة تطبيقات الشركاء Partner APIs
لا يمكن الوصول إليها إلا من خلال المطورين الخارجيين المعتمدين لمساعدة الشراكات بين الشركات.
واجهات برمجة التطبيقات المركبة Composite APIs
تجمع هذه بين اثنين أو أكثر من واجهات برمجة التطبيقات (APIs) المختلفة لمعالجة متطلبات النظام أو سلوكياته المعقدة.
ما هي نقطة نهاية API Endpoint ، وما سبب أهميتها؟
نقاط نهاية API هي نقاط الاتصال النهائية في نظام اتصالات API. يتضمن ذلك عناوين URL للخادم والخدمات والمواقع الرقمية المحددة الأخرى التي يتم من خلالها إرسال المعلومات واستقبالها بين الأنظمة. تعتبر نقاط نهاية واجهة برمجة التطبيقات (API) بالغة الأهمية للمؤسسات لسببين رئيسيين:
- الأمن Security
تجعل نقاط نهاية API النظام عرضة للهجوم. تعد مراقبة واجهة برمجة التطبيقات (API) أمرًا ضروريًا لمنع سوء الاستخدام. - الأداء Performance
يمكن أن تتسبب نقاط نهاية واجهة برمجة التطبيقات (API)، وخاصة تلك ذات حركة المرور العالية، في حدوث اختناقات وتؤثر على أداء النظام.
الزر ادناه يشير إلى مجموعة متنوعة من PUBLIC API اضغط للبدء بالاضافات على موقعك