انتقل إلى محتوى الدرس

How Back-End Servers Expose APIs كيف يبني الخادم واجهات API

تعرّف على كيفية بناء الخادم لواجهات RESTful API وتبادل بيانات JSON واختبارها بأداة Postman، والفرق بين المصادقة والترخيص، وتتبع الدخول عبر الجلسات ورموز JWT.
3 صفوف تعليمية
تكنولوجيا الويب
9 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

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

قبل الغوص في تفاصيل هذا الدرس، استعرض جدول المصطلحات الأساسية التالية:

المصطلح بالعربية المصطلح بالإنجليزية النطق التقني المعنى المبسط
نقطة نهاية البرمجة إيه بي آي إند بوينت مسار رابط محدد على الخادم (مثل /api/courses) مخصص لاستقبال طلبات معينة وإرجاع بيانات منظمة.
واجهة برمجة قياسية ريستفول إيه بي آي نمط معماري قياسي لتنظيم مسارات الخادم باستخدام طرق وأكواد حالة HTTP وتبادل البيانات بصيغة JSON.
المصادقة وإثبات الهوية أوثينتيكيشن عملية التحقق من هوية المستخدم للإجابة عن سؤال: من أنت؟ (عبر البريد وكلمة المرور أو رمز التحقق).
الترخيص وتحديد الصلاحيات أوثورايزيشن عملية فحص صلاحيات المستخدم بعد معرفة هويته للإجابة عن سؤال: ماذا يُسمح لك بفعله؟
جلسة الخادم سيرفر سيشن سجل يحفظه الخادم في ذاكرته أو قاعدة بياناته لتتبع المستخدم المسجل، ويربطه بمعرّف يُرسل في ملف Cookie.
رمز الويب الموقّع جيسون ويب توكن / جي دبليو تي بطاقة هوية رقمية مشفرة وموقّعة يصدرها الخادم ويحملها التطبيق ليرسلها في رأس الرسالة مع كل طلب.
الصف 2 شرح توضيحي

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

  • عقل مركزي واحد يخدم كل الشاشات: بدلاً من أن يرسل الخادم صفحات جاهزة تصلح للمتصفح فقط، يوفّر الخادم نقاط وصول للبيانات الخام المنظمة؛ فتتحدث شاشة الموقع وتطبيق الآيفون وتطبيق الأندرويد جميعاً مع نفس الخادم ونفس قاعدة البيانات.
  • عقد عمل واضح بين فرق التطوير: يحدد مطور الواجهة الخلفية عنوان الرابط والحقول المطلوبة وشكل النتيجة؛ وبمجرد اعتماد هذا العقد، يعمل مطور الواجهة الأمامية ومطور الهواتف بالتوازي دون انتظار.
  • حراسة قاعدة البيانات: لا يُسمح لأي متصفح أو هاتف بالاتصال بقاعدة البيانات مباشرةً أبداً، بل يمر كل طلب عبر بوابة في الخادم أولاً.
الصف 3 ملاحظة هامة