ماذا تعني API؟ أمثلة على كيفية استخدام واجهات برمجة التطبيقات

ماذا تعني API؟ أمثلة على كيفية استخدام واجهات برمجة التطبيقات

API تعني 'واجهة برمجة التطبيقات'. وعلى الرغم من أن هذا قد يبدو غريبًا إذا كنت جديدًا في البرمجة ، فمن السهل فهمها بمجرد تقسيمها. يمكنك حتى استخدامها يوميًا أثناء تشغيل هاتفك المحمول أو جهاز الكمبيوتر أو أثناء تصفح الإنترنت.





تعمل البرامج ، بما في ذلك تطبيقات الويب وتطبيقات الأجهزة المحمولة والعديد من البرامج الأخرى ، على ربط العالم معًا عبر الإنترنت. ولكن لجعل هذا أكثر كفاءة ، يجب أن تكون هناك قناة اتصال بين هذا البرنامج - وهنا يأتي دور API.





سنشرح هنا معنى واجهات برمجة التطبيقات وكيفية استخدامها.





ما هي API؟

هل تعرف كيف يمكنك مشاهدة مقاطع الفيديو على منصات البث مثل Netflix و YouTube وغيرها؟ هذا ممكن لأنك ترسل طلبًا من خلال واجهة برمجة التطبيقات.

أو هل تخيلت كيف يمكنك دفع ثمن البضائع التي تشتريها من المتاجر عبر الإنترنت مثل Amazon و eBay؟ هذا أيضًا بسبب وجود قناة اتصال تُعرف باسم API بين البنك الذي تتعامل معه وتطبيقات التسوق.



ومع ذلك ، فإن API عبارة عن واجهة بها مجموعة من القواعد التي تسمح لخادم التطبيق الخاص بك بالتفاعل مع خادم مزود الحلول بحيث يمكنك استخدام موارده. في جوهرها ، تحدد كيفية تواصل التطبيقات أو البرامج مع بعضها البعض.

ومع ذلك ، في بعض الحالات ، تسمح واجهة برمجة التطبيقات بتبادل البيانات المتبادل. مثال على ذلك هو الاتصال الموجود بين تطبيقات البنك وتطبيقات المتجر عبر الإنترنت.





واجهة برمجة التطبيقات تشبه برنامج المراسلة. يتصل بخادم الموفر من جهة ويرسي خادم العميل أيضًا على الطرف الآخر. ثم يقوم بعد ذلك بتقديم طلب العميل إلى مصدر البيانات (خادم الموفر) وإرجاع استجابة إلى العميل. العميل هنا هو المتصفح أو التطبيق الخاص بك.

ومع ذلك ، هناك خطاف يربط تطبيقك بواجهة برمجة التطبيقات. هذه نقطة نهاية API. ومع ذلك ، تتكشف الكثير من الأشياء خلف الكواليس. سنشرح هذه المزيد.





كيف تساعدك واجهات برمجة التطبيقات على تطوير التطبيقات بشكل أسرع

تعد واجهات برمجة التطبيقات أداة أكثر ذكاءً لإنشاء تطبيقات سلسة وقوية. بدونها ، قد يستغرق إنشاء تطبيقات متطورة وقتًا طويلاً.

تخيل أنك بحاجة إلى تطبيقك لأداء عمليات معقدة ، من النوع الذي يستغرق الكثير من الوقت والجهد لإنشائه. ثم يظهر شخص ما ببرنامج جاهز يفعل ما تريده بالضبط ، وربما يكون أفضل.

أشياء ممتعة للقيام بها مع التوت باي

ولكن كيف يمكنك ربط هذا بتطبيقك؟ أدرك الموفر أن هذا قد يمنحك بعض الوقت الصعب ، ثم أخبرك أنه أنشأ واجهة اتصال (API) تجعل الكود الخاص به ورمزك يتكاملان بسلاسة.

تتصل تلك الواجهة (API) بالخادم الذي يحتوي على التعليمات البرمجية الخاصة بهم. ثم يغذيك مرة أخرى بالبيانات ذات الصلة من عمل البرنامج النصي الخاص بهم.

بالطبع ، لا تريد أن تتحمل نفسك مع النص المصدر بالكامل. إلى جانب ذلك ، تعتمد معظم واجهات برمجة التطبيقات الحديثة الآن على تقنية REST الموحدة (نقل الحالة التمثيلية). فهي تجعلها قابلة للتطوير بدرجة كبيرة ويسهل دمجها ، دون الحاجة إلى القلق بشأن ما يتكشف بداخلها أو حالة استجابتك أو طلبها أثناء تنسيقها مسبقًا.

هذه المقالة لن تشرح أكثر من REST API. ركز على الأساسيات في الوقت الحالي.

يعد توصيل الكود الخاص بك في الكود الخاص بهم فكرة أفضل من كتابته من البداية. للقيام بذلك ، ومع ذلك ، تحتاج إلى ربط التعليمات البرمجية الخاصة بك بواجهة برمجة التطبيقات التي قدموها. كيف تفعل هذا؟ هذا هو المكان الذي تظهر فيه نقطة نهاية API في المشهد.

ما هي نقطة نهاية API؟

لتبسيط الأمور ، يقوم مقدمو الخدمة بعد ذلك بوضع عنوان URL لجعل الاتصال بواجهة برمجة التطبيقات الخاصة بهم سلسًا. عنوان URL هذا هو ملف نقطة نهاية API . باستخدامه ، يمكن لتطبيقك الوصول إلى خادمهم من خلال واجهة برمجة التطبيقات والتواصل مع البرنامج النصي الخاص بهم مباشرة.

لذلك كل ما عليك فعله هو الحصول على نقطة النهاية ، ولصقها في التعليمات البرمجية الخاصة بك ، وتقديم الطلبات معها ، وتخصيص الردود ، وبعد ذلك ، تعمل ، وهي ملكك! لذلك ، تربط نقطة نهاية واجهة برمجة التطبيقات تطبيقك من خلال واجهة برمجة التطبيقات بحل أو مصدر بيانات.

في النهاية ، تتوفر العديد من البرامج التي تقدم واجهات برمجة التطبيقات بلغات برمجة مختلفة بحيث لا يتم استبعاد أي شخص من الاستفادة منها.

بهذه الطريقة ، ستحصل على الكود بشكل أسرع وأكثر كفاءة ، مع العلم أن مسؤولية الحفاظ على واجهة برمجة التطبيقات لا تقع عليك بل على موفري البيانات أو الحلول.

لذلك ، فإن نقطة نهاية API هي رابط اتصال يربط API بخادم مورد عند إحدى الحواف ويربطها بخادم المستقبل على الطرف الآخر.

هذا يعني أنك لست بحاجة إلى النص الكامل للحل الذي تريد استخدامه. لكن لا يمكن للكود الخاص بك إنشاء اتصال به إذا لم يتصل بنقطة نهاية API الخاصة به.

قواعد تكامل API

لا توجد قاعدة صارمة لدمج API. يوجد الكثير منهم هناك ، ولكل منهم قواعد تكامله. لكن ضع في اعتبارك أنك تتوقع ملف استجابة كلما قمت بإنشاء اتصال بواجهة برمجة التطبيقات.

عادةً ما تستند كيفية تقديم الطلبات من خلال نقطة نهاية واجهة برمجة التطبيقات إلى القواعد التي يحددها الموفر ، ولكن ما تفعله بالاستجابة التي تحصل عليها يعتمد على تفضيلاتك. في الأساس ، يمكنك تحريفها كما تريد لتتوافق مع تجربة مستخدمي تطبيقك وواجهة المستخدم.

في بعض الأحيان ، تحتاج أيضًا إلى مصدق قبل أن تتمكن من الوصول إلى واجهة برمجة التطبيقات. عادةً ما تأتي هذه المصادقات كرموز وصول أو مفاتيح API. بمجرد اجتياز هذا الرمز المميز لاختبار المصادقة ، تشير واجهة برمجة التطبيقات (API) بعد ذلك إلى نقطة النهاية الخاصة بها لإنشاء اتصال بين تطبيقك وخادم الموفر.

بصفتك مستهلكًا لواجهة برمجة التطبيقات ، لا داعي للقلق بشأن هذه المعلمات لأن موفر واجهة برمجة التطبيقات يتيحها. يجب أن توضح واجهة برمجة التطبيقات الرائعة أيضًا كيف يمكنك الوصول إلى مواردها واستخدامها في وثائقها. لذلك ابحث دائمًا عن ذلك عند محاولة دمج أحدهما.

لتقريبها ، فإن استدعاء API هو كل شيء عن ملف رؤوس ، و نقطة النهاية ، ال طلب ، و ال استجابة أو ال هيئة .

بينما أوضحنا ماهية نقطة النهاية ، فلنقم بتفصيل هذه المصطلحات الأخرى بشكل أكبر:

الرؤوس

عادة ، تحتاج إلى وصف شكلين من الرؤوس أثناء الاتصال بواجهة برمجة التطبيقات: ملف طلب و ال استجابة رؤوس.

ال عنوان الطلب هي بوابة استدعاء API. يصف نهج العميل للوصول إلى المورد. قد يفصل أشياء مثل نوع الاتصال المقبول ومعلومات الوكيل ونوع البيانات (JSON أو XML أو HTML) التي تريد الحصول عليها من واجهة برمجة التطبيقات.

كما أوضحنا سابقًا ، بناءً على نوع واجهة برمجة التطبيقات التي تتصل بها ، قد تضطر إلى توفير رمز مصادقة فريد داخل رأس الطلب أيضًا. عادة ما يعطي الموفر هذا.

ال رأس الاستجابة ، من ناحية أخرى ، هو تأكيد للبيانات القادمة من خادم المزود. يعطي التطبيق الخاص بك معلومات حول خصائص الموفر. في جوهره ، يضمن أن يمنحك التطبيق إمكانية الوصول إلى الاستجابة القادمة من واجهة برمجة التطبيقات.

طلب API

عادةً ما يحتوي طلب واجهة برمجة التطبيقات على نقطة النهاية في عنوان URL (محدد موقع الموارد الفريد). يستخدم بروتوكول نقل النص التشعبي (HTTP) لتحديد عنوان المورد الذي تحاول الوصول إليه باستخدام واجهة برمجة التطبيقات. في النهاية ، لا يكتمل طلب واجهة برمجة التطبيقات إذا لم تقم بتضمين نقطة النهاية في عنوان URL.

لن يبدأ الكمبيوتر في الوضع الآمن

استجابة API

الرد هو ما ترسله واجهة برمجة التطبيقات (API) في كل مرة تتلقى فيها طلبًا من تطبيقك. يمكن أن يكون JSON أو XML أو HTML ، اعتمادًا على البيانات أو نوع المحتوى الذي يتلقاه من عنوان الطلب الخاص بك.

بمجرد حصولك على رد من واجهة برمجة التطبيقات ، يمكنك اعتبار استدعاء API الخاص بك ناجحًا.

كيفية استخدام واجهات برمجة التطبيقات: أمثلة عملية

الآن بعد أن تعرفت على أساسيات واجهات برمجة التطبيقات وما تحتاجه لدمج واحدة. ألقِ نظرة على كيفية توصيل ودمج واجهة برمجة تطبيقات تنبؤ كرة القدم من رابيدابي باستخدام Python أدناه.

إنها استدعاء API بسيط يقوم بإرجاع استجابة JSON. يمكنك أيضًا كتابة التعليمات البرمجية الخاصة بك في أي محرر نصوص وتشغيلها عبر سطر الأوامر.

متعلق ب: كيفية تشغيل برنامج بايثون النصي

ومع ذلك ، انتبه جيدًا إلى نقطة النهاية ومحتوى رؤوس الطلبات ورؤوس الاستجابة:

import requests
endpoint = 'https://football-prediction-api.p.rapidapi.com/api/v2/predictions'
queryparams = {'market':'classic','iso_date':'2021-01-01','federation':'UEFA'}
#Define the request header:
headers = {
'x-rapidapi-key': 'Paste your access key here',
'x-rapidapi-host': 'football-prediction-api.p.rapidapi.com'
}
#Define the response header:
response = requests.request('GET', endpoint, headers=headers, params=queryparams)
#Get the response:
print(response.text)

استمر في التعلم: كيفية استخدام IPStack API لعمليات البحث عن تحديد الموقع الجغرافي لعنوان IP

ماذا عن الحصول على درجة الحرارة والرطوبة الحالية للمكان باستخدام واجهة برمجة تطبيقات Weatherstack مع بايثون؟ إليك مثال أدناه:

import requests
endpoint = 'http://api.weatherstack.com/current'
headers = {
'access_key': 'Paste your access key here',
'query': 'California'
}
req = requests.get(endpoint, headers)
res = req.json()
print(u'Current temperature in %s is %d℃' %
(res['location']['name'], res['current']['temperature']))
print(u'Current humidity in %s is %d℃' %
(res['location']['name'], res['current']['humidity']))

أنواع واجهات برمجة التطبيقات التي يمكنك دمجها

واجهات برمجة التطبيقات مفتوحة المصدر مجانية ، ويمكن لأي شخص استخدامها. توجد واجهات برمجة التطبيقات الداخلية داخل المؤسسة ، ويمكن فقط للتطبيقات التي تنتمي إلى تلك المؤسسة استخدام مواردها.

ومع ذلك ، يمكنك أيضًا اختيار واجهة برمجة تطبيقات مخصصة عن طريق الدخول في اتفاقية شراكة مع مزود. أو يمكنك الجمع بين العديد من واجهات برمجة التطبيقات لحل المشكلات المختلفة.

أيضًا ، قد تأتي واجهات برمجة التطبيقات هذه ، باستثناء واجهات برمجة التطبيقات مفتوحة المصدر والداخلية ، بسعر يتراوح أحيانًا من مئات إلى آلاف الدولارات.

تبسيط تطوير التطبيقات باستخدام واجهات برمجة التطبيقات

كما ترى ، لم تعد بحاجة إلى كتابة التعليمات البرمجية التي تستغرق وقتًا طويلاً. إذا كنت بحاجة إلى تطبيقك لأداء عمليات معقدة ، فيمكنك دائمًا البحث هناك والحصول على واجهة برمجة تطبيقات ذات صلة. لحسن الحظ ، أصبح من السهل دمجها الآن أكثر من تلك التقليدية القديمة. وإذا كنت فضوليًا وترغب في معرفة المزيد ، فهناك العديد من واجهات برمجة التطبيقات المجانية التي يمكن أن تساعدك في التخلص من يديك.

يشارك يشارك سقسقة بريد الالكتروني كيف تعمل واجهات برمجة التطبيقات وكيفية دمجها في تطبيقك

يعد استخدام واجهات برمجة التطبيقات (APIs) مهارة أساسية يجب على جميع المبرمجين إتقانها.

اقرأ التالي
مواضيع ذات صلة
  • برمجة
  • برمجة
  • إطلاق النار
  • المصطلحات
  • نصائح الترميز
نبذة عن الكاتب إديسو أوميسولا(94 مقالة منشورة)

Idowu شغوف بأي شيء التكنولوجيا الذكية والإنتاجية. في أوقات فراغه ، يلعب بالبرمجة ويتحول إلى رقعة الشطرنج عندما يشعر بالملل ، لكنه أيضًا يحب الابتعاد عن الروتين من حين لآخر. يحفزه شغفه بإظهار طريقة حول التكنولوجيا الحديثة للناس على كتابة المزيد.

المزيد من Idowu Omisola

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك