استخدام وتوصيل واجهة برمجة تطبيقات منصة بيسيلر. API: ما هو عليه وكيفية العمل وإعداد أنواع API للتكامل

API(إنجليزي) واجهة برمجة تطبيق) - إنها واجهة برمجة تطبيقات. توفر واجهة برمجة التطبيقات لتطبيق أو خدمة معينة مجموعة من الإجراءات والوظائف والمتغيرات الجاهزة التي يمكن لمطوري الجهات الخارجية استخدامها لإنشاء تطبيقاتهم ونصوصهم الخاصة للعمل مع هذه الخدمة.

عند العمل من خلال API ، يرسل التطبيق طلبًا إلى الخدمة ويتلقى ردًا يحتوي على البيانات المطلوبة ، بغض النظر عن لغة البرمجة التي تم إنشاؤها بها.

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

معلومات حول الطلبات المقدمة

الإجراءات (الطرق) المتاحة لمعالجة المعلومات حول الطلبات:

  1. تحديد معلومات الطلب عن طريق المعرف
  2. تحديد المعلومات حول الطلبات عن طريق التصفية
  3. عدد الطلبات حسب التصفية
  4. قم بإنشاء طلب
  5. حذف الطلب
  6. الحذف بالجملة للأوامر
  7. تحديد جميع الحالات المتاحة للأوامر
  8. تحديث حالة الطلب
  9. إضافة تعليق على أمر

معلومات المشترك

  1. إضافة مشترك
  2. حذف المشترك
  3. الإزالة الجماعية للمشتركين
  4. اختيار بيانات المشترك بالتصفية
  5. عدد المشتركين حسب التصفية

معلومات حول المستخدمين المسجلين

الإجراءات (الطرق) المتاحة لمعالجة المعلومات حول المشتركين:

  1. اختيار المعلومات حول المستخدمين المسجلين عن طريق الهوية
  2. اختيار المعلومات حول جميع المستخدمين المسجلين
  3. اختيار المعلومات حول جميع البيانات المحددة من قبل المستخدم أثناء التسجيل:
    • الاسم الكامل؛
    • عنوان الإتصال بريد إلكتروني;
    • رقم الاتصالهاتف؛
    • عنوان التسليم المحدد: الرمز البريدي والاسم مكان، اسم الشارع ، رقم المنزل ، رقم المبنى ، رقم الشقة ، الطابق ؛

ملحوظة!عند التسجيل ، لا يجوز للمستخدم ملء جميع الحقول أعلاه.

خطط تطوير API

في المستقبل القريب ، نخطط لفتح واجهات لدعم تفاعل المتاجر معها تطبيقات الطرف الثالثوخدمات للعمل مع:

  1. أقسام الدليل.
  2. بضائع.
  3. سلة.
  4. الخصومات.
  5. طرق التوصيل.
  6. طرق الدفع.

لاختبار التفاعل مع واجهة برمجة التطبيقات لمنصة البائع ، تم إنشاء متجر اختبار beseller-api.shop.by.

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

قبل اختبار تفاعلات API ، نوصيك بما يلي:

  1. ضع العديد من الطلبات بنفسك ؛
  2. اشترك في النشرة الإخبارية؛
  3. انظر كيف يتم عرض المعلومات حول الطلبات المقدمة والمشتركين في لوحة إدارة المتجر.

لوحة تحكم المتجر متاحة على: beseller-api.shop.by/manager/. يتشابه تسجيل الدخول وكلمة المرور عند الدخول إلى لوحة التحكم مع تسجيل الدخول وكلمة المرور للوصول إلى المتجر.

كيف تتصل بمتجرك عبر API؟

لربط التطبيق بمتجرك ، يجب عليك تحديد عنوان url للوصول إلى واجهة برمجة التطبيقات الخاصة بالنموذج:

http: // your_site_address: 8082 / graphql؟ token = your_personal_secret_key

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

وظائف ومتغيرات GraphQL للعمل مع واجهة برمجة تطبيقات النظام الأساسي البسيط

كيفية الاتصال بواجهة برمجة التطبيقات باستخدام لغة برمجة PHP

لتوفير الراحة للعمل مع واجهة برمجة تطبيقات النظام الأساسي للبائع ، يمكنك استخدام:

  1. الفصول التي طورناها تحت PHP.
    1. GraphqlClient- يستقبل البيانات وينقلها إلى الخادم ؛
    2. GraphQlHelper- يحتوي على استعلام مطبق وطفرة API ؛
  2. أمثلة على استخدام الفئات لإجراء التحديدات والتغييرات في قاعدة بيانات متجر عبر الإنترنت.

تهيئة البيئة المحلية

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

تُستخدم GraphiQL Feen كبيئة محلية ، وهذا امتداد للمتصفح جوجل كروممما يسمح لك بإنشاء طلبات لواجهة برمجة التطبيقات.

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

افتح تطبيق GraphiQL Feen وانتقل إلى علامة التبويب "الخوادم" ، وحدد طريقة الإرسال POST ، ثم حدد عنوان URL للوصول إلى واجهة برمجة التطبيقات.

يجب استخدام العنوان التالي كعنوان url اختبار:

تم تكوين البيئة المحلية ، يمكنك إنشاء طلبات لواجهة برمجة التطبيقات. للقيام بذلك ، افتح علامة التبويب "استعلامات".

تشكيل طلب لواجهة برمجة تطبيقات البيزر باستخدام GraphiQL Feen والاستجابة المستلمة

شرح لقطة الشاشة:

  1. الطلبات المحفوظة
  2. حقل لإدخال الطلبات
  3. حقل إدخال متغير
  4. تلقى الرد
  5. زر البدء

مثال على طلب لتلقي قائمة الطلبات المكتملة لفترة زمنية محددة

الاستعلام ($ first: Int ، $ offset: Int ، $ filter: OrdersFilterType) (
الطلبات (أولاً: $ first ، offset: $ offset ، filter: $ filter) (
تعليق
حالة(
بطاقة تعريف
وصف
اسم
}
create_date
update_date
المجموع(
لاحقة
قيمة
}
قسط(
اسم
وصف
يكلف (
لاحقة
قيمة
}
}
توصيل (
اسم
وصف
يكلف (
لاحقة
قيمة
}
}
العملات (
رمز بنكي
دورة
لاحقة
}
بيانات المستخدم(
اسم
وصف
قيمة
}
}
}

تحديد الفترة الزمنية لجلب البيانات على الطلبات المكتملة

{
"منقي" :(
"date_after": "2017-11-16T00: 00: 01Z"،
"date_before": "2017-11-23T00: 00: 01Z"
}
}

مثال على استجابة API

{{
"بيانات" :(
"طلبات": [
{
"تعليق": "Culpa officiis velut."،
"create_date": "22-11-2017 16:23:28" ،
"العملات": [
{
"bank_code": "BYN"،
الدورة: 10000
"لاحقة": "فرك"
}
],
"توصيل" :(
"يكلف": [
{
"اللاحقة": "rub."،
القيمة: 0
}
],
"الوصف": "Courier"،
"الاسم": "مخصص"
},
قسط: (
"يكلف": [
{
"اللاحقة": "rub."،
القيمة: 0
}
],
"الوصف": "البطاقات البلاستيكية"،
"الاسم": "مخصص"
},
حالة: (
"الوصف": "جديد"،
"المعرف": 1 ،
"الاسم": "جديد"
},
"المجموع": [
{
"اللاحقة": "rub."،
القيمة: 4450
}
],
"update_date": "22-11-2017 16:23:28"،
"بيانات المستخدم": [
{
"الوصف": "عنوان البريد الإلكتروني" ،
"الاسم": "البريد الإلكتروني"،
"قيمة": " [بريد إلكتروني محمي]"
},
{
"الوصف": "الهاتف" ،
"الاسم": "الهاتف" ،
"القيمة": "784.392.3949x69329"
},
{
"الوصف": "العنوان"،
"الاسم": "التسجيل" ،
"القيمة": "607 Erik Station Suite 057 \ nReynaberg، WY 83542-0037"
},
{
"الوصف": "تعليق" ،
"الاسم": "تعليق" ،
"القيمة": "Id nam illo optio."
},
{
"الوصف": "الاسم"،
"الاسم": "fio"،
"القيمة": "Jordi Mann MD"
}
]
}

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

على سبيل المثال: لكي ترى السطر "Hello، world!" كل ما عليك فعله هو إنشاء مستند HTML مع الحد الأدنى من العنوان ونص بسيط يحتوي على السلسلة المحددة. ماذا يحدث عندما يفتح المستعرض هذا المستند؟ سيقوم برنامج المتصفح بتمرير اسم الملف (أو واصف ملف مفتوح بالفعل) إلى المكتبة التي تعالج مستندات HTML ، والتي بدورها ، باستخدام واجهة برمجة تطبيقات نظام التشغيل ، ستقرأ هذا الملف ، وتفهم أجهزتها ، وعمليات استدعاء مثل "مسح النافذة "،" اكتب في الخط المحدد مرحباً ، أيها العالم! "، أثناء هذه العمليات ، ستتحول مكتبة الرسوم الأولية إلى مكتبة واجهة النافذة مع الطلبات المناسبة ، وستتحول هذه المكتبة بالفعل إلى واجهة برمجة تطبيقات نظام التشغيل مع طلبات مثل" ضعني في المخزن المؤقت لبطاقة الفيديو هذا ".

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

وبالتالي ، فإن التعقيدات الرئيسية لأنظمة API ذات الطبقات الحالية هي:

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

أنواع API الأساسية

  • الوصول إلى API يقتصر على المطورين الداخليين
  • تستهدف التطبيقات موظفي المؤسسة

سائقي عمل:

  • اتساق التنمية
  • تقليل التكاليف
  • تحسين كفاءة التنمية

واجهات برمجة التطبيقات للشريك

  • واجهات برمجة التطبيقات متاحة فقط مجموعة محدودةشركاء العمل
  • تطبيقات مصممة للمستهلكين النهائيين ومستخدمي الأعمال

سائقي عمل:

  • أتمتة عملية التطوير
  • تطوير الشراكات
  • تحسين عملية التفاعل مع الشركاء

واجهات برمجة التطبيقات العامة

يُمنح الوصول إلى أي مطور خارجي ، وتهدف التطبيقات إلى المستخدمين النهائيين

سائقي عمل:

  • تطوير خدمات جديدة
  • تطوير النظام البيئي
  • تفاعل متعدد القنوات

أشهر واجهات برمجة التطبيقات

واجهات برمجة تطبيقات نظام التشغيل

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

  • Direct3D (جزء من DirectX)
  • DirectDraw (جزء من DirectX)

واجهات برمجة تطبيقات الصوت

  • DirectSound (جزء من DirectX)
  • DirectMusic (جزء من DirectX)

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

مبدأ واستخدام API الاقتصاد

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

تمكّن واجهات برمجة التطبيقات المؤسسات من إنشاء تجارب مستخدم مخصصة

تتغير توقعات المشتري وسلوكه

المشترون:

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

المنظمات:

  • التفاعل مع العملاء من خلال مواقع الويب التفاعلية التي تم إنشاؤها لهذا الغرض تطبيقات الهاتف الجوالوغيرها من الواجهات الرقمية الودية
  • توقع خدمة متكاملة وشاملة
  • سوف يذهب إلى من يناسب متطلباتهم

API في كل مكان!

التسلسل الزمني للأحداث

2019

بحث عن TAdviser مع PJSC VTB Bank بمشاركة Skolkovo: بدء تحول API في القطاع المصرفي في روسيا

دعا البنك المركزي حوالي 20 بنكًا للمشاركة في البرنامج التجريبي المفتوح API

في 21 أغسطس 2019 ، أصبح معروفًا أن بنك روسيا قد عمل كمنسق لمشروع تجريبي في مجال واجهات برمجة التطبيقات المفتوحة (واجهات برمجة التطبيقات) لدمج الخدمات المصرفية داخل الاتحاد الاقتصادي الأوروبي الآسيوي (EAEU). في وقت إصدار المادة ، يعمل البنك المركزي ، جنبًا إلى جنب مع البنوك المركزية لبلدان EAEU ، على إعداد نموذج تجريبي للتنفيذ. مصرفيون تلقوا عرضًا من البنك المركزي أخبروا صحيفة كوميرسانت عن هذا الأمر. في المجموع ، تلقت حوالي 20 مؤسسة ائتمانية خطابًا من الجهة التنظيمية ، والتي يجب أن ترد على استعدادها للمشاركة بحلول 23 أغسطس. اقرأ أكثر.

صناعة الأوراق المالية جاهزة ل API

في 2 أغسطس 2019 ، أصبح معروفًا أن دراسة مشتركة بين SWIFT و BCG كشفت عن زيادة في استخدام واجهات برمجة التطبيقات على خلفية رغبة الشركات في تحسين الكفاءة وتقديم الخدمات.

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

زاد الوعي بواجهة برمجة التطبيقات بين مديري الأصول بنسبة 26٪ خلال عام 2018 وحده (من 46٪ إلى 72٪) ، وفقًا لمسح BCG. يقود الاهتمام التجاري المتزايد المخططات التجريبية وسيناريوهات التطبيق ، خاصة بين شركات الإدارة والقائمين عليها.

يمكن أن تساعد واجهات برمجة التطبيقات صناعة الأوراق المالية في التعامل مع أنواع الأصول العديدة والمتنوعة ، والتبادلات المعقدة للمعلومات ، وضغوط الرسوم المتزايدة. يسلط التقرير الضوء على أربعة مجالات يمكن أن تفيد فيها واجهات برمجة التطبيقات الصناعة بأكملها:

  • الكفاءة وتوفير التكاليف من خلال التبادل الآلي للبيانات
  • الوصول إلى المعلومات في الوقت الفعلي مثل حالة التسوية والمخاطر اليومية
  • خدمات إضافية: إثراء البيانات والتحليلات
  • المقاييس التشغيلية التي تسمح لمقدمي الخدمات بمقارنة الأداء بين اللاعبين في السوق

في صناعة الأوراق المالية ، كان اعتماد API أبطأ مما هو عليه في صناعات الخدمات المالية الأخرى ويرجع ذلك جزئيًا إلى الافتقار إلى الإطار التنظيمي وعدم الاتساق في رغبة اللاعبين في السوق في تبني واجهات برمجة التطبيقات. تختلف شركات إدارة الأصول اختلافًا كبيرًا في معداتها التقنية وانفتاحها على التفاعل مع المزودين عبر API. اعتبر حوالي 56٪ من المشاركين في استطلاع BCG أن مستوى اعتماد API في مرحلة ما بعد التداول "تجريبي" ، بينما قال 21٪ فقط أنه "مرتفع" أو "متوسط".

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

أشارت جولييت كينيل ، رئيسة قسم الأوراق المالية وأسواق العملات في SWIFT


يقدم التقرير أربعة أسباب تدفع الصناعة إلى تنفيذ واجهات برمجة التطبيقات:

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

قال سوميترا كارثيكيان ، رئيس خدمات الأوراق المالية في BCG


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

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

ماذا يعني API

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

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

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

الايجابيات:

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

سلبيات:

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

أمثلة API

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

VKAPI

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

يتم إجراء جميع الطلبات على العنوان https://api.vk.com/method/

يتبع الشرطة المائلة اسم طريقة API المستخدمة ويتم تمرير معلمات طلب GET. تأتي الاستجابة أيضًا عبر HTTPS بتنسيق JSON.

واجهة برمجة تطبيقات TELEGRAM BOT

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

يتم تقديم الطلبات إلى https://api.telegram.org/bot0000000:token/

حيث يتم استبدال bot0000000 بالمعرف الفريد لبرنامج الروبوت الخاص بك ، ويعبر الرمز المميز عن المفتاح السري.

يتم إرسال الطلبات عبر اتصالات HTTPS ، ويتم تحديد اسم الطريقة من خلال شرطة مائلة إلى العنوان الرئيسي. يأتي الرد بتنسيق JSON.

فتح خريطة الطقس API

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

تنسيق العمل: نقل HTTP عبر api.openweathermap.org/data/2.5/weather؟id= مع الإشارة إلى رقم تعريف المدينة المطلوبة. استجابة الخادم: JSON.

API خرائط جوجل

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

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

على سبيل المثال ، قد يبدو وضع علامة على الخريطة كما يلي:

var mark = new google.maps.Marker ((
الموقف: myPOS ،
الخريطة: الخريطة ،
العنوان: "مرحبًا!"
});

ما هو استخدام API ولماذا هو مفيد

هناك عدد غير قليل من الميزات المفيدة.

الجانب الأول

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

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

الجانب الثاني

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

  • تدفق كبير للعملاء.
  • وصول مبسط إلى خدماتك للشركاء.
  • راحة تحليل احصائياستخدام الخدمة.

الجانب الثالث

تقريبا نفس الشيء الثاني. ولكن دون الحاجة إلى تنفيذ API لـ الوصول المفتوح. إذا كان لديك بوابة وتريد إنشاء تطبيق Android / IOS للهاتف المحمول لها ، فأعد كتابة النظام لواجهة برمجة تطبيقات واحدة - أفضل قرار. هيكل البيانات بأكمله منظم. سيعمل الموقع والتطبيق من خلال قنوات بيانات مفردة.

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

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

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

API في تطبيقات الويب عن طريق الأمثلة

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

وبالمثل ، يمكنك إرسال طلب بأي لغة ، بما في ذلك لغة Ruby. سيكون الرد على الطلب مثل هذا:

("تسجيل الدخول": "Freika" ، "id": 3738638 ، "avatar_url": "https://avatars.githubusercontent.com/u/3738638؟v=3"، "gravatar_id": ""، "url": "https://api.github.com/users/Freika"، "html_url": "https://github.com/Freika"، "Followers_url": "https://api.github.com/users/Freika/followers"، "following_url": "https://api.github.com/users/Freika/following(/other_user)"، "gists_url": "https://api.github.com/users/Freika/gists(/gist_id)"، "starred_url": "https://api.github.com/users/Freika/starred(/owner)(/repo)"، "subscriptions_url": "https://api.github.com/users/Freika/subscriptions"، "organization_url": "https://api.github.com/users/Freika/orgs"، "repos_url": "https://api.github.com/users/Freika/repos"، "events_url": "https://api.github.com/users/Freika/events(/privacy)"، "ived_events_url ": "https://api.github.com/users/Freika/received_events"، "type": "User"، "site_admin": false، "name": "Evgeniy"، "company": ""، "blog": "http://frey.su/"، "location": " Barnaul "،" email ":" "،" hireable ": true،" bio ": null،" public_repos ": 39،" public_gists ": 13،" Followers ": 15،" following ": 21،" created_at ": "2013-03-01T13: 48: 52Z"، "updated_at": "2014-12-15T13: 55: 03Z")

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

API واحد لا يكفي

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

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

مرة أخرى ، سنستخدم Github لإعطاء مثال: للعمل مع واجهة برمجة التطبيقات لهذه الخدمة الممتازة (وتوفر واجهتها إمكانيات واسعة) ، تم إنشاء العديد من المكتبات بلغات مختلفة ، على سبيل المثال ، جوهرة Octokit. في وثائق مثل هذه المكتبات (والجوهرة المقدمة كمثال) ، سيتمكن أي مطور مهتم من العثور على جميع الطرق اللازمة لتلقي المعلومات من Github وإرسالها مرة أخرى من خلال واجهة برمجة تطبيقات الخدمة.

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

روابط مفيدة

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

ربما رأيت مصطلح "API". غالبًا ما يعلن نظام التشغيل ومتصفح الويب وتحديثات التطبيق عن واجهات برمجة تطبيقات جديدة للمطورين. ولكن ما هو API؟

واجهة برمجة تطبيق

مصطلح API هو اختصار ويقف على "واجهة برمجة التطبيقات".

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

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

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

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

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

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

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

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

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

تتحكم واجهات برمجة التطبيقات في الوصول إلى الموارد

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

على سبيل المثال ، إذا سبق لك زيارة موقع ويب ورأيت رسالة في متصفحك تفيد بأن موقع الويب يطلب موقعك بالضبط ، فإن هذا الموقع يحاول استخدام واجهة برمجة تطبيقات تحديد الموقع الجغرافي في متصفح الويب الخاص بك. توفر متصفحات الويب واجهات برمجة تطبيقات لتسهيل وصول مطوري الويب إلى موقعك - ​​يمكنهم ببساطة أن يسألوا "أين أنت؟" ويقوم المتصفح بالعمل الشاق للوصول إلى نظام تحديد المواقع العالمي (GPS) أو في مكان قريب شبكات WiFiللعثور على موقعك الفعلي.

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

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

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

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

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

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

هذا ينطبق على العديد من الخدمات المختلفة عبر الإنترنت. توجد واجهات برمجة تطبيقات لطلب ترجمة نص من ترجمة Google ، أو عرض تعليقات Facebook أو تغريدات من Twitter على موقع ويب.

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

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



تحميل...
قمة