مايكل تشن | كاتب أول | 24 فبراير 2025
يشير مصطلح "API" إلى واجهة برمجة التطبيقات. تعمل واجهات برمجة التطبيقات كجسور بين التطبيقات، مما يتيح لها الاتصال ومشاركة البيانات. على سبيل المثال، تعتمد لوحة المعلومات التي يستخدمها فريق التسويق لإدارة حسابات وسائط اجتماعية متعددة على واجهات برمجة التطبيقات، التي تربط الأنظمة الأساسية الاجتماعية للشركة بشاشة لوحة المعلومات وتسحب البيانات ذات الصلة.
يستفيد مستخدم الإنترنت النموذجي باستمرار من واجهات برمجة التطبيقات، وغالبًا دون إدراك ذلك. تربط واجهات برمجة التطبيقات مصادر البيانات العامة، مثل مواقع التنبؤ بالطقس، بالتطبيقات التجارية لتحذيرنا من العواصف القادمة. يمكن للمطورين الوصول بانتظام إلى واجهة برمجة تطبيقات خرائط Google لتضمين الخرائط وخدمات الموقع في مواقعهم الإلكترونية. يستخدم بائعو التجزئة بوابات الدفع المدعومة بواجهة برمجة التطبيقات مثل PayPal وStripe للتعامل بأمان مع المعاملات المالية مع العملاء.
واجهة برمجة التطبيقات (API) هي مجموعة من القواعد والبروتوكولات التي تسمح للتطبيقات بتبادل البيانات وتنفيذ الإجراءات والتفاعل بطريقة موثقة جيدًا. عند تقديم طلب—لتحديث الطقس، على سبيل المثال—تقوم واجهة برمجة التطبيقات بمعالجة الطلب وتنفيذ الإجراءات اللازمة وإرجاع استجابة، عادةً بتنسيق قياسي مثل تلك المحددة بواسطة JSON أو XML.
النقاط الرئيسة
باستخدام واجهات برمجة التطبيقات، يمكن للمطورين الوصول إلى منصات البرامج والخدمات محليًا من التطبيقات التي يقومون بإنشائها. بدون واجهات برمجة التطبيقات، يجب تصدير البيانات يدويًا من تطبيق واحد، وإعدادها وتحويلها، ثم استيرادها يدويًا إلى تطبيق آخر في كل مرة يريد فيها المستخدم التحقق من الطقس أو الرد على تعليق على موقع وسائط اجتماعية.
بعبارات بسيطة، هناك ثلاثة أطراف تشارك في عملية التبادل، على النحو التالي:
فكر في مطعم. إذا دخل جميع العملاء إلى المطبخ لطلب أطباقهم المفضلة، فسيترتب على ذلك فوضى. في هذا السيناريو، توفر واجهة برمجة التطبيقات قائمة (وثائق) تسرد جميع الخدمات (الأطباق) التي يمكن أن يقدمها المطبخ (تطبيق الخادم). يشرح ما هي المعلومات التي تحتاجها كعميل وما هو التنسيق الذي يجب تقديم طلبك فيه.
تعمل واجهة برمجة التطبيقات كنادل، أو تنتقل بينهما، مع التأكد من اتخاذ الطلبات وتسليمها بطريقة موحدة.
تعمل واجهات برمجة التطبيقات من خلال تحديد كيفية تفاعل مكونات البرامج، مما يتيح للمطورين دمج أنظمة مختلفة ومشاركة البيانات والوظائف دون الحاجة إلى إنشاء كل شيء من البداية، مما يوفر الوقت والموارد. تحدد واجهات برمجة التطبيقات عادةً الأساليب والبروتوكولات التي يجب استخدامها للاتصال، بالإضافة إلى تنسيقات البيانات التي يمكن تبادلها.
تحدد واجهة برمجة التطبيقات كيفية تفاعل التطبيقات من خلال توفير التفاصيل بما في ذلك:
يقوم مطور تطبيق العميل الذي يطلب كتابة البيانات بكتابة التعليمات البرمجية لإجراء استدعاء API. تحدد هذه التعليمة البرمجية ما يلي:
يرسل التطبيق الطلبات إلى بوابوة API الخاصة بتطبيق الخادم، والتي تدير الطلبات الواردة. تقوم بوابة API بتوجيه الطلب إلى الخدمة المناسبة داخل التطبيق الهدف. تقوم الخدمة بمعالجة الطلب واسترجاع البيانات أو تنفيذ إجراء آخر مطلوب.
تقوم الخدمة الهدف بعد ذلك بإعداد بيانات الاستجابة وفقًا لتعريف واجهة برمجة التطبيقات وإرسالها مرة أخرى من خلال عبّارة واجهة برمجة التطبيقات إلى التطبيق الطالب، الذي يتلقى البيانات ويحللها ويقوم بتسليم النتيجة المتوقعة إلى المستخدم النهائي.
نظرًا لأنها توفر طريقة موحدة للمطورين للوصول إلى بيانات ووظائف التطبيقات والخدمات الأخرى، تتيح واجهات برمجة التطبيقات للشركات تجنب إعادة إنشاء العجلة المثلية. يوفر ذلك الوقت والمال. كما يعزز التوحيد القياسي الابتكار وقابلية التوسع من خلال تمكين الإضافة النمطية للميزات والخدمات الجديدة دون تعطيل تشغيل الأنظمة الحالية.
على مستوى الأعمال، تعد واجهات برمجة التطبيقات أمرًا بالغ الأهمية لأنها تسمح للشركات بأتمتة المهام والعمليات المتكررة من خلال تمكين البرامج من التفاعل مباشرة مع البرامج الأخرى. نظرًا إلى أن معظم الشركات تعمل على إضافة الأتمتة لتحرير الموظفين للمهام ذات المستوى الأعلى، فإن قدرة واجهات برمجة التطبيقات على تقليل أحمال العمل اليدوية وزيادة الكفاءة التشغيلية تعد ميزة رئيسة. تعتمد المؤسسات التي تتطلع إلى زيادة استخدام الخدمات السحابية أيضًا بشكل كبير على واجهات برمجة التطبيقات.
تعمل مكونات واجهة برمجة التطبيقات معًا للسماح لأنظمة البرامج المختلفة بالاتصال وتبادل البيانات والوظائف. يعد فهم هذه المكونات أمرًا ضروريًا لدمج واجهات برمجة التطبيقات بنجاح في برنامجك. تتضمن مكونات API ما يلي:
قد تتضمن واجهات برمجة التطبيقات أيضًا تقييد المعدل ومعالجة الأخطاء والوثائق للمطورين. تتضمن كتابة واجهة برمجة تطبيقات قوية سلسلة من القرارات، بدءًا من النمط المعماري وحتى أدوات التصميم، وهي مهارة لا تقدر بثمن للمؤسسات التي تتطلع إلى مستقبل أصلي للسحابة.
باستخدام واجهات برمجة التطبيقات، يمكن للمطورين ربط التطبيقات الموزعة—على سبيل المثال، تطبيق الهاتف الذكي بموقع ويب على وسائل التواصل الاجتماعي، أو نظام الرواتب بحساب بنك أعمال. نظرًا إلى أن واجهات برمجة التطبيقات تتيح إنشاء تطبيقات مفيدة من الخدمات الصغيرة والفردية والمتصلة، فإنها تدفع فوائد في المتانة وقابلية التوسع.
في حالة انقطاع خدمة واحدة، يمكن لمعظم التطبيقات الاستمرار. تشمل المزايا الإضافية ما يلي:
بالنسبة لجميع جوانب واجهة برمجة التطبيقات، توجد تحديات حول التعقيد والتكلفة والأمان التي يجب مراعاتها عند تصميم التطبيقات التي تستخدم استدعاءات واجهة برمجة التطبيقات، وعند إنشاء واجهات برمجة التطبيقات الخاصة بك. قد تصبح البرامج التي تعتمد على واجهات برمجة تطبيقات متعددة صعبة الإدارة والصيانة - خاصة إذا قام موفر واجهة برمجة التطبيقات بإجراء تحديثات أو تغييرات متكررة.
وتشمل التحديات المحددة التي يتعين التصدي لها ما يلي:
ذات الصلة، ليس كل مطوري واجهة برمجة التطبيقات يصدرون الوثائق الواضحة والشاملة التي تعد ضرورية لمطوريك لاستخدام واجهة برمجة التطبيقات ودمجها، لذلك اختر شركاء الموفرين بعناية.
بالنسبة لأولئك الذين يتطلعون إلى تطوير واجهات برمجة التطبيقات، هناك بعض النقاط، خاصةً حول اختيار المواصفات وتقليل الطلب. إن مبدأ تصميم واجهة برمجة التطبيقات الجيد هو تجريد المستهلك وحمايته من التغييرات التي تطرأ على كيفية تنفيذ الواجهة الخلفية. يعكس تصميم واجهة برمجة التطبيقات الخاص بك بشكل مباشر تخزين البيانات الأساسي، على سبيل المثال، إذا تغيرت هياكل البيانات الداخلية، تتأثر واجهة برمجة التطبيقات، مما قد يعطل عميل واجهة برمجة التطبيقات.
الأخطاء الأخرى التي يجب تجنبها تشمل:
سوء التوثيق. تعد الوثائق الواضحة والمفصلة ضرورية لنجاح واجهة برمجة التطبيقات. على سبيل المثال، عند وصف تاريخ، يجب أن تكون واضحًا في التنسيق. في أوروبا، يتم عادة تمثيل التاريخ على أنه يوم، شهر، ثم سنة، بينما في أمريكا الشمالية، يكون الترتيب شهرًا، يومًا، سنة. قد يؤدي عدم الوضوح في هذه التفاصيل إلى حدوث مشكلات في جودة البيانات، وفي أسوأ الأحوال، كسر واجهة برمجة التطبيقات الخاصة بك للتطبيق.
عدم مراعاة أحجام بيانات الإنتاج. أثناء تطوير واجهات برمجة التطبيقات، يستخدم الاختبار مجموعات بيانات صغيرة نسبيًا. خلال الإنتاج، غالبًا ما تكون أحجام البيانات أكبر بكثير، مما يؤدي إلى استدعاءات واجهة برمجة التطبيقات التي تحاول توصيل كميات هائلة من البيانات في طلب واحد. قد يؤدي ذلك إلى مجموعة من المشكلات، تبعًا للشبكة بين العميل والواجهة الخلفية. أسوأ حالة، قد يضع الطلب طلبًا زائدًا على الواجهة الخلفية لواجهة برمجة التطبيقات، مما قد يؤدي إلى فشل استدعاء واجهة برمجة التطبيقات.
قد تحدث أخطاء أيضًا عند تعيين سياسات لبوابة واجهة برمجة التطبيقات. تتضمن هذه الأخطاء عادةً عدم توفير الأمان الكافي، والذي يمكن أن يسمح للجهات الفاعلة الخبيثة بتغيير البيانات أو الوصول إليها بشكل غير صحيح أو حتى استخدام واجهة برمجة التطبيقات كطريقة لمهاجمة الشبكة. يتم تحليل هذه الأنواع من المشكلات وتجميعها بواسطة مؤسسة OWASP، مع الإبلاغ عن الأخطاء الأكثر شيوعًا في قائمة أفضل 10 مخاطر أمان لواجهة برمجة التطبيقات المعروفة.
يعد الخلط بين أدوار بوابة واجهة برمجة التطبيقات والواجهة الخلفية لواجهة برمجة التطبيقات خطأً شائعًا آخر. تحتاج كلتا الإمكانات إلى معالجة واجهات برمجة التطبيقات عند تلقيها، ومن السهل مزج العنصرين معًا. ومع ذلك، فإن مهمة العبّارة هي فحص الطلبات وتوجيهها إلى المكان الصحيح بسرعة كبيرة. ستحتاج الواجهة الخلفية لواجهة برمجة التطبيقات إلى وقت أطول لمعالجة كل طلب لأنها تقدم منطق الأعمال.
تذكر أن العلاقة بين استدعاءات واجهة برمجة التطبيقات والواجهة الخلفية لواجهة برمجة التطبيقات ليست علاقة فردية.
هناك أربعة أنواع رئيسة من واجهات برمجة التطبيقات. يعتمد ما تختاره على حالة الاستخدام الخاصة بك. ضع في اعتبارك الخطط قصيرة وطويلة الأجل للتطبيق قبل الاستقرار على نموذج—التبديل في واجهة برمجة تطبيقات مختلفة أمر قابل للتنفيذ ولكنه يزيد من التكاليف والتعقيد.
معظم الناس على دراية بواجهات برمجة تطبيقات المستهلكين، مثل الطقس أو الموقع. ولكن هناك عالم من واجهات برمجة التطبيقات المتطورة التي تمكن المؤسسات من الاستفادة من الوظائف من الخدمات السحابية إلى قواعد البيانات إلى تطبيقات الأعمال القوية.
على سبيل المثال، تقدم Oracle مجموعة واسعة من واجهات برمجة التطبيقات عبر خدماتها. يمكن للشركات التي تستخدم Oracle Cloud Infrastructure (OCI) الاستفادة من واجهات برمجة التطبيقات للإدارة البرمجية للشبكات الافتراضية، بما في ذلك إنشاء الشبكات الفرعية وقوائم الأمان وجداول المسارات وتكوينها وإدارتها. تتيح واجهة برمجة تطبيقات الحوسبة للمسؤولين بدء مثيلات الحوسبة وإيقافها وإعادة تشغيلها وتكوينها في OCI. تربط واجهات برمجة التطبيقات الأخرى فرق تكنولوجيا المعلومات بوظائف تخزين الكائنات وإدارة الهوية والوصول.
تستخدم الشركات الناشئة المبتكرة واجهات برمجة التطبيقات أيضًا. على سبيل المثال، توفر Inworld.ai شخصيات افتراضية قائمة على الذكاء الاصطناعي للألعاب عبر الإنترنت. باستخدام واجهات برمجة التطبيقات، يمكن للمطورين إنشاء أحرف غير قابلة للتشغيل (NPCs) تتفاعل مع اللاعبين بطريقة واقعية وجذابة. تتيح واجهات برمجة التطبيقات لمصممي الألعاب تحديد سمات الشخصية والشخصية والسلوكيات، مما يسمح لهم بتخصيص NPCs لإضافة عمق وتنوع إلى ألعابهم. يمكن للأحرف الظاهرية فهم مدخلات النص أو الصوت والاستجابة لها، كل ذلك عبر واجهات برمجة التطبيقات.
بدءًا من استخدام Dominoes لواجهات برمجة التطبيقات للتكامل مع المساعدين الصوتيين حتى يتمكن العملاء من طلب البيتزا دون لمس جهاز إلى Uber باستخدام واجهات برمجة التطبيقات للربط بالبيانات في الوقت الفعلي وتعديل أسعار الركوب ديناميكيًا استنادًا إلى الطلب وظروف حركة المرور، تعمل هذه التكنولوجيا على دفع الابتكار الحقيقي الآن.
بالنسبة للشخص العادي، ستكون واجهات برمجة التطبيقات التي تتيح تكامل الوسائط الاجتماعية ومعالجة الدفع مألوفة. تستخدم العديد من مواقع الويب والتطبيقات واجهات برمجة التطبيقات لتمكين وظائف الوسائط الاجتماعية الشائعة، مثل مشاركة المحتوى، بينما تستخدم منصات التجارة الإلكترونية واجهات برمجة التطبيقات للاتصال ببوابات الدفع مثل Stripe أو PayPal.
لكن هذه ليست الطريقة الوحيدة التي تجعل بها واجهات برمجة التطبيقات حياتنا اليومية أسهل. تتيح خدمات الموقع الجغرافي التي تستخدمها التطبيقات التي توفر خدمات مشاركة الركوب أو توصيل الطعام التي تعتمد على تخطيط واجهات برمجة التطبيقات للعثور على موقع منزل العميل أو وجهته.
من ناحية الأعمال، تتضمن حالات استخدام واجهة برمجة التطبيقات السماح للفِرق بالتفاعل مع الموارد السحابية، مثل التطبيقات التي تستخدمها للوظائف المالية أو وظائف خدمة العملاء. تمثل واجهات برمجة التطبيقات أيضًا قوة الاتصال وتبادل البيانات بين أجهزة IoT وأنظمة التحكم الخاصة بها.
إذا كنت تعمل في مكتب ذكي حيث يتم ضبط الأضواء ودرجة الحرارة تلقائيًا، فهذه حالة استخدام API.
توجد العديد من البروتوكولات، أو الأنماط البنيوية، لتعريض واجهات برمجة التطبيقات للمطورين. تتيح هذه الأساليب للمطور معرفة كيف يتوقع أن تعمل مجموعة من واجهات برمجة التطبيقات وعموماً الآلية التي ستستخدمها للوصول إلى واجهة برمجة التطبيقات من برامجها الخاصة.
تشمل الأنماط البنيوية الشائعة ما يلي:
تربط عمليات تكامل واجهة برمجة التطبيقات التطبيقات وتسمح لها بتبادل البيانات والوظائف. تخيل عمليات التكامل كخطوط هاتف تتيح الاتصالات المفتوحة الخلفية والشاملة.
هناك ثلاثة عناصر متضمنة.
توفر واجهات برمجة التطبيقات نفسها القواعد والمواصفات التي تحدد كيفية اتصال التطبيقات. تحدد واجهات برمجة التطبيقات البيانات التي يمكن تبادلها، وكيفية تنسيقها، والإجراءات التي يمكن تشغيلها.
يعرض تطبيق الخادم وظائفه أو بياناته عبر واجهة برمجة التطبيقات. على سبيل المثال، قد توفر الخدمة السحابية واجهة برمجة تطبيقات تساعد فِرق تكنولوجيا المعلومات على إعداد مثيلات جديدة بسرعة أو إضافة مقاعد.
يستخدم تطبيق العميل واجهات برمجة التطبيقات لطلب البيانات أو الوظائف من تطبيق الخادم. على سبيل المثال، يستخدم تطبيق rideshare واجهة برمجة تطبيقات خدمة الطقس لضبط الأسعار عندما تمطر أو أعلى من أو أقل من حدود درجة حرارة معينة.
تتضمن العملية الفعلية بضع خطوات، بدءًا من مطور تطبيق العميل الذي يختار واجهة برمجة تطبيقات مناسبة. يستخدم العميل مفاتيح API أو الرموز المميزة أو بيانات الاعتماد الأخرى للتصديق مع واجهة API المطلوبة والحصول على تصريح للوصول إلى بيانات أو إجراءات محددة. ثم يقوم بإجراء طلبات، أو استدعاءات، إلى واجهة برمجة تطبيقات الخادم التي تطلب البيانات أو الإجراء المطلوب بالضبط.
يقوم تطبيق الخدمة بمعالجة الطلب، وفي حالة التصريح به، يقوم بتنفيذ الإجراء أو استرجاع البيانات وإرسالها مرة أخرى إلى العميل، عبر واجهة برمجة التطبيقات، بتنسيق منظم، مثل JSON أو XML.
التحول الرقمي يدور حول السحابة، وتعد واجهات برمجة التطبيقات حجر الزاوية في البنى الأصلية للسحابة. تسمح واجهات برمجة التطبيقات بتكامل الخدمات والأنظمة داخل السحابة، وتسمح للمؤسسات بربط التطبيقات القديمة بخدماتها السحابية الجديدة، مما يتيح الانتقال التدريجي إلى مستقبل رقمي دون تعطيل العمليات. ومع واجهات برمجة التطبيقات، يمكن للمؤسسات الاستجابة بسرعة لتغيرات السوق وفرصه. فكر في إنشاء خدمات حديثة، مثل بوابات الدفع والأنظمة الأساسية للوسائط الاجتماعية وأدوات التحليلات، مباشرة في تطبيقاتك.
ومن التقنيات التحويلية الأخرى، والقائمة على واجهة برمجة التطبيقات، الخدمات الصغيرة، وهو نهج معماري لتطوير التطبيقات الحديثة التي تفضل الخدمات والوظائف المستقلة. في بنية الخدمات الصغيرة، يتم تقسيم التطبيق إلى اللبنات الأساسية المضمنة التي تؤدي مهمة واحدة بكفاءة. تتواصل الخدمات الصغيرة مع التطبيقات أو الخدمات الأخرى باستخدام واجهات برمجة التطبيقات. يمكن أن يحتوي التطبيق على عدد قليل من الخدمات الصغيرة، أو يمكن أن يتكون من مئات أو حتى آلاف الأجزاء المتحركة. تتوسع التطبيقات المستندة إلى الخدمات الصغيرة بشكل أسرع من خلال الحفاظ على استقلالية العناصر الفردية. يوفر هذا المرونة والسهولة اللازمتين لمبادرات التحول الرقمي التي قد تعوقها البنى الأحادية المستخدمة في تطوير البرامج القديمة.
يمكن للشركات السحابية الأصلية التي تتبنى الخدمات الصغيرة التحرك بسرعة لاغتنام الفرص الجديدة وتبني الأتمتة. تدعم واجهات برمجة التطبيقات هذه الاستراتيجية.
تعمل الشركات على تطوير واجهات برمجة التطبيقات لتعزيز النمو المستمر للسحابة والذكاء الاصطناعي (AI) والتعلم الآلي (ML)، مع إرسال الطلبات والنتائج من خلال واجهات برمجة التطبيقات. لكن واجهات برمجة التطبيقات نفسها تشهد أيضًا تقدمًا.
أحد الأمثلة على ذلك هو بوابات العكس (الخروج). عادةً ما تكون مهمة بوابة API هي تقديم الطلبات الواردة. ومع ذلك، هناك حالات تعمل فيها بوابة واجهة برمجة التطبيقات كوكيل إنترنت متخصص، مما يوفر بنية تحتية لتوجيه حركة مرور شبكة التطبيقات مع السماح لفرق تكنولوجيا المعلومات بمراقبة ما يحدث. عندما تكون الطريقة الوحيدة لمغادرة حركة المرور للشبكة هي من خلال بوابة واجهة برمجة التطبيقات، باستخدام واجهات برمجة التطبيقات الخارجية المعتمدة، يمكن لتكنولوجيا المعلومات تدقيق الحزم التي تغادر الشبكة وفهم ما يحدث مع بياناتها بشكل أفضل.
يمكن لبوابات واجهة برمجة التطبيقات أيضًا تتبع استخدام الخدمات القابلة للتحميل، مما يضمن استخدام الخدمة بشكل صحيح وأن الإيرادات تأتي كما هو متوقع. بالإضافة إلى ذلك، يمكن أن تساعد البوابات في اختبار إصدارات جديدة من التطبيقات قبل النشر. أثناء الاختبار، قد تحتاج الاستدعاءات إلى توجيهها بناءً على ما إذا كان الطلب قد تم إنشاؤه من نظام الإنتاج أو الطلب الذي يتم اختباره. يمكن للبوابة اشتقاق المعلومات اللازمة وإجراء إعادة التوجيه.
تساعد تقنيات تقييد معدل واجهة برمجة التطبيقات الجديدة وتقليصه فرق تكنولوجيا المعلومات على إدارة الوصول إلى واجهة برمجة التطبيقات ومنع الهجمات. يقيد تقليص المعدل عدد استدعاءات واجهة برمجة التطبيقات التي يمكن أن يقوم بها التطبيق خلال إطار زمني محدد، بينما يؤدي تقييد الوصول ديناميكيًا إلى ضبط الوصول استنادًا إلى عوامل مثل تحميل الخادم أو ما إذا كان يتم وضع علامة على النشاط على أنه قد يكون ضارًا.
تتضمن الاتجاهات والمعايير الرئيسية الأخرى التي تشكل مشهد واجهة برمجة التطبيقات التركيز على الانفتاح وقابلية التشغيل البيني، دون التضحية بالأمان. يجب على الشركات مراقبة الاتجاهات بما في ذلك ما يلي:
مبادرة OpenAPI. مبادرة OpenAPI، أو OAS، هي مجموعة من المؤسسات التي تعمل بلغة مشتركة لوصف واجهات برمجة التطبيقات. نأمل أن يضيف هذا التنسيق القياسي إلى التوثيق والاكتشاف والتكامل بشكل أفضل.
مقاطع ويب JSON. أصبح جهد آخر مفتوح للمعايير، رموز JWT طريقة شائعة للتصديق والاعتماد في واجهات برمجة التطبيقات. وهي توفر طريقة آمنة للتطبيقات لتبادل معلومات هوية المستخدم دون تخزين البيانات الحساسة على خادم واجهة برمجة التطبيقات نفسه.
OAuth 2.0. ونظرًا لأن الأمان لا يقل أهمية عن التوحيد القياسي، يتم اعتماد OAuth 2.0، وهو البروتوكول المتوافق مع معايير الصناعة للترخيص، على نطاق واسع. يتيح إطار عمل OAuth 2.0 للتطبيقات الوصول إلى بيانات المستخدم على منصة تطبيقات أخرى دون مطالبة المستخدمين بمشاركة كلمات المرور الخاصة بهم. وهذا يمنح الأفراد والشركات المزيد من التحكم في بياناتهم.
يعتمد OpenID Connect، أو OIDC، على OAuth 2.0 ويسمح للتطبيقات بالتحقق من هوية المستخدم دون الحاجة إلى صلاحيات تسجيل دخول منفصلة لكل تطبيق.
أخيرًا، بالنسبة إلى الشركات التي تعتمد بشكل كبير على أداء واجهة برمجة التطبيقات القوي، تعد تحليلات واجهة برمجة التطبيقات ضرورة ناشئة. من خلال المراقبة والتحليل الاستباقيين لأنماط استخدام واجهة برمجة التطبيقات، يمكن لتكنولوجيا المعلومات تحديد اختناقات الأداء والمخاطر الأمنية وفرص التحسين. ابحث عن مدير واجهة برمجة التطبيقات الذي يوفر أدوات لجمع بيانات استخدام واجهة برمجة التطبيقات والنفاذ إليها. يمكن أن يساعد قياس واجهات برمجة التطبيقات الأكثر استخدامًا المؤسسات على تحديد مكان إجراء الاستثمارات. على سبيل المثال، إذا كانت واجهات برمجة التطبيقات لحل ERP القديم تستخدم أكثر من تلك الخاصة بـ CRM، فقد يكون من المنطقي تحديد أولويات تحسين ERP أو استبداله.
توفر Oracle Cloud Infrastructure (OCI) مجموعة شاملة من الخدمات لإدارة دورة حياة واجبات برمجة التطبيقات. الأدوات المضمنة تجعل من السهل على فرق المطورين التعاون في عمل النماذج الأولية واجهات برمجة التطبيقات واختبارها والتحقق منها. توفر Oracle Cloud Infrastructure API Gateway التكامل والتسريع والحوكمة والأمان للأنظمة المستندة إلى واجهة برمجة التطبيقات وSOA، مما يتيح للفرق إدارة وتقديم واجهات برمجة تطبيقات الويب بشكل آمن. بالإضافة إلى ذلك، تسمح خطط الاستخدام والاشتراكات لعوامل تشغيل واجهة برمجة التطبيقات بمراقبة واجهات برمجة التطبيقات (API) وتحقيق الدخل منها.
بمجرد أن يفهم فريق التطوير طريقة عمل واجهات برمجة التطبيقات، يحصلون على رؤى حول الاتصالات الخفية التي تدعم العديد من التطبيقات والخدمات التي يستخدمها عملاؤهم وموظفوهم كل يوم. الآن، يمكن للمطورين إنشاء التطبيقات بشكل أسرع وأفضل وبأقل من خلال الاستفادة من البيانات والوظائف التي يتم عرضها من خلال واجهات برمجة التطبيقات بدلاً من إنشاء كل شيء من البداية.
تعد التطبيقات المالية حالات استخدام رئيسة ومطلوبة لواجهات برمجة التطبيقات. يمكنهم مساعدة مديري المعلومات التنفيذيين في مساعدة المديرين الماليين على تقديم أنظمة تسعد كل من الموظفين والعملاء. فيما يلي طرق أخرى للمساعدة في تبسيط العمليات المالية الأساسية.
ما الأنواع الأربعة لواجهات برمجة التطبيقات؟
الأنواع الأربعة لواجهات برمجة التطبيقات عامة (يمكن لأي شخص استخدامها)، خاصة (تم تطويرها داخليًا داخل المؤسسة)، شريك (تم تطويره للعمل بين البرامج من المؤسسات المعنية)، ومركبة (أنواع مختلفة من واجهات برمجة التطبيقات المستخدمة معًا).
ما هو مثال على واجهة برمجة التطبيقات في الحياة الحقيقية؟
من الأمثلة الجيدة على موفر واجهة برمجة التطبيقات العام NASA، التي توفر واجهات برمجة التطبيقات لمشاركة بيانات البحث والصور ومعلومات تتبع الأحداث. تسمح واجهات برمجة التطبيقات هذه للمطورين بالحصول على موجز لبيانات NASA المختارة—مثل تحديثات جوال المريخ أو تفاصيل حول الأحداث الطبيعية التي تتبعها NASA مثل الثورات البركانية—ودمجها في تطبيقاتهم الخاصة. على سبيل المثال، قد يدمج تطبيق الطقس تحديثات جوال المريخ في قسم خاص يتم الترويج له على أنه موجز "مباشر من المريخ" للمستخدمين للتحقق منه.
هل إنشاء واجهة برمجة تطبيقات أمر سهل؟
يمكن أن تكون كتابة واجهة برمجة التطبيقات عملية مباشرة، خاصة للمطورين ذوي الخبرة. يمكن ترميز واجهات برمجة التطبيقات بأي لغة برمجة تقريبًا، وتوفر البنى الحالية مثل REST إرشادات ثابتة للعمل معها. تتمثل إحدى الطرق البسيطة لتعلم تطوير واجهة برمجة التطبيقات في إجراء الهندسة العكسية على واجهات برمجة التطبيقات العامة مفتوحة المصدر لمعرفة كيف قام مهندسوها بإنشائها.
ما المقصود بواجهة برمجة تطبيقات REST بعبارات بسيطة؟
يشير REST، الذي يشار إليه أحيانًا باسم RESTful، إلى "نقل الدولة التمثيلية" وهو بروتوكول قياسي يستخدم لتطوير خدمات الويب. توفر خدمة REST مجموعة من القواعد والإرشادات للسماح للتطبيقات المختلفة بالاتصال عبر الإنترنت بطريقة قابلة للتوسع وفعالة. يحدد REST كيفية تقديم التطبيقات للطلبات—عادةً GET وPUT وPOST وDELETE—من خلال HTTP باستخدام HTML أو XLT أو Python أو JSON أو PHP أو نص عادي دون الاعتماد على إنشاء علاقة محددة بين العميل والخادم.