كيفية نشر واجهة برمجة تطبيقات Node.js بدون خادم باستخدام بوابة AWS API؟

Kyfyt Nshr Wajht Brmjt Ttbyqat Node Js Bdwn Khadm Bastkhdam Bwabt Aws Api



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

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

اقرأ أكثر : البدء مع AWS Lambda







مخطط سريع



توضح هذه المقالة الجوانب التالية:



ما هو الإطار بدون خادم؟

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





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

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

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



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

ما هي بوابة API؟

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

ما هي أنواع مختلفة من API في بوابة API؟

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

واجهة برمجة تطبيقات HTTP: تُستخدم واجهة برمجة التطبيقات (API) هذه على نطاق واسع في تطوير الويب والتي تقتصر على جانب العميل فقط. يمكن تصنيف واجهات برمجة التطبيقات هذه على أنها خاصة أو عامة.

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

واجهة برمجة تطبيقات ويب سوكيت: يتم استخدام واجهات برمجة التطبيقات هذه عندما يتعلق الأمر باتصال مأخذ التوصيل. يتيح WebSocket API للمستخدمين إنشاء مآخذ توصيل للاتصال المزدوج الكامل ثنائي الاتجاه في تطوير الويب. تمت كتابة واجهات برمجة التطبيقات هذه بلغة JavaScript.

كيفية نشر واجهة برمجة تطبيقات Node.js بدون خادم باستخدام بوابة API؟

لنشر واجهة برمجة تطبيقات Node.js بدون خادم مع بوابة API، سنستخدم حاوية S3 ووظيفة Lambda وبوابة API. سيحتوي دلو S3 على رمز التطبيق. سيتم توفير معرف URI الفريد للحاوية إلى وظيفة Lambda كمعالج. ستتم إضافة بوابة واجهة برمجة التطبيقات (API) كمشغل لوظيفة Lambda التي ستقوم بمعالجة مدخلات المستخدم وتوفير المخرجات المناسبة.

فيما يلي خطوات نشر واجهة برمجة تطبيقات Node.js بدون خادم مع بوابة واجهة برمجة التطبيقات:

الخطوة 1: إنشاء وظيفة لامدا

لإنشاء دالة Lambda، قم بالوصول إلى 'لامدا' الخدمة من وحدة تحكم إدارة AWS :

يتعلم أكثر: 'كيفية إنشاء دالة Lambda باستخدام Python Runtime' .

في واجهة وظيفة Lambda، انقر فوق 'إنشاء وظيفة' زر:

من واجهة إنشاء وظيفة، حدد 'المؤلف من الصفر' خيار:

التالي يأتي 'معلومات اساسية' قسم. في هذا القسم، قم بتوفير اسم وظيفة Lambda في ملف 'اسم وظيفة' :

اضغط على 'إنشاء وظيفة' الزر الموجود أسفل الواجهة:

هنا، وظيفة تم إنشاء بنجاح :

الخطوة 2: إنشاء بوابة API

الخطوة التالية هي إنشاء بوابة API. ولهذا الغرض، قم بالوصول إلى 'بوابة واجهة برمجة التطبيقات' الخدمة من وحدة تحكم إدارة AWS :

قم بالتمرير لأسفل إلى واجهة API Gateway وانقر فوق 'يبني' الخيار من واجهة برمجة تطبيقات REST حاجز:

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

في ال إعدادات على نفس الواجهة، قم بتوفير اسم واجهة برمجة التطبيقات (API) في الملف 'اسم واجهة برمجة التطبيقات' حقل النص:

اضغط على 'إنشاء واجهة برمجة التطبيقات' زر:

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

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

بعد إنشاء المورد، انقر فوق 'أجراءات' علامة التبويب مرة أخرى واختر 'إنشاء الموارد' طريقة لتحديد الأساليب والموارد داخل واجهة برمجة التطبيقات:

تقديم اسم 'اسم المورد' الحقل وانقر على 'إنشاء الموارد' زر:

بعد تكوين الموارد المتداخلة، انقر فوق 'أجراءات' زر وانقر على 'إنشاء طريقة' زر من القائمة المنسدلة :

نريد اختبار عمل واجهة برمجة التطبيقات (API) الخاصة بنا باستخدام الحصول على الطلب في Node.js. ولذلك، في واجهة الأساليب، سوف نختار 'يحصل' طلب:

بعد اختيار الحصول على الطلب ، اضغط على 'يفحص' زر لتأكيد التغييرات:

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

بعد النقر على 'يحفظ' الزر، سيظهر مربع الحوار التالي. انقر على 'نعم' زر:

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

سيعرض هذا مربع الحوار التالي. في ال 'مرحلة النشر' تقديم التفاصيل. التالي يأتي 'اسم المرحلة' حقل لتحديد اسم المرحلة. اضغط على 'نشر' زر:

ال واجهة برمجة التطبيقات كان تم إنشاؤه بنجاح :

حرك الفأرة لأسفل الواجهة ثم اضغط على 'حفظ التغييرات' زر:

الخطوة 3: إنشاء دلو S3

في هذه الخطوة، سنقوم بإنشاء حاوية لتخزين الكود. سيتم ربط هذا الرمز بوظيفة Lambda وسيتم استخدام واجهة برمجة التطبيقات لاسترداد السمات التي تم تكوينها داخل الكود.

لإنشاء حاوية S3، ابحث في 'اس 3' الخدمة في شريط البحث الخاص بـ وحدة تحكم إدارة AWS. اضغط على اسم الخدمة من النتائج المعروضة:

على وحدة التحكم S3، انقر فوق 'إنشاء دلو' خيار لبدء العملية:

في ال التكوين العام القسم، قم بتوفير معرف فريد عالميًا للحاوية الموجودة في حقل النص المميز :

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

سيؤدي هذا إلى إنشاء الدلو. الآن، لتحميل التعليمات البرمجية إلى مجموعة S3، قمنا بتوفير ملف كود Node JS البسيط في جيثب مخزن. قم بتنزيل الكود الموجود في تنسيق مضغوط :

بعد تنزيل ملف مضغوط ، اذهب إلى لوحة القيادة S3 واختر الدلو. في الواجهة التالية، انقر على 'رفع' زر و رفع ال ملف مضغوط إلى الدلو:

يتعلم أكثر: كيفية تحميل الكائنات في Amazon Simple Storage Service؟

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

ال ملف كان تم الرفع بنجاح :

بعد تحميل الملف إلى الدلو، انقر فوق هدف لعرض الخصائص:

اضغط على 'نسخ S3 URI' زر. سيتم إضافة هذا إلى وظيفة Lambda:

اذهب الى لوحة معلومات لامدا واختر وظيفة Lambda:

قم بالتمرير لأسفل إلى 'شفرة' القسم ثم اضغط على 'تحميل من' زر. من القائمة المنسدلة، اضغط على 'موقع أمازون S3' خيار:

لصق “S3 URI” في مربع الحوار المعروض، ثم انقر فوق 'يحفظ' زر:

على ال واجهة وظيفة لامدا ، قم بالتمرير لأسفل إلى 'إعدادات وقت التشغيل' وانقر على 'يحرر' زر:

في ال 'المعالج' الحقل، قم بتحرير التكوينات التالية. ال 'العقدة' هو اسم المجلد الذي تم تحميله إلى مجموعة S3 وindex.js هو نقطة الإدخال. بعد ذلك اضغط على 'يحفظ' زر:

الخطوة 4: التحقق

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

بعد اختيار API، انقر على 'مراحل' من الشريط الجانبي ثم انقر فوق مرحلة النشر، على سبيل المثال، المرحلة الأولى:

انسخ ال عنوان URL وإطلاق ساعي البريد أداة على الجهاز المحلي:

إنشاء الحصول على الطلب في ال ساعي البريد والصق عنوان URL فيه. بعد النقر على 'يرسل' الزر نحصل على النتائج التالية:

هذا كل شيء من هذا الدليل.

خاتمة

لنشر Node.js API مع بوابة API، قم بتحميل التعليمات البرمجية إلى حاوية S3، وأضفها كمعالج، وبوابة API كمشغل لوظيفة Lambda. سيتم تسليم الطلب الذي تم بدؤه باستخدام Postman إلى وظيفة Lambda من خلال واجهة برمجة التطبيقات. لإنشاء واجهة برمجة التطبيقات (API)، استخدم خدمة بوابة واجهة برمجة التطبيقات (API) الخاصة بـ AWS. ستوفر حاوية S3 التي تمت إضافتها كمعالج إلى وظيفة Lambda التعليمات البرمجية لمعالجة الطلب. سيتم عرض الإخراج على وحدة تحكم Postman. هذه المقالة عبارة عن برنامج تعليمي خطوة بخطوة لتطبيق Node.js API مع بوابة AWS API.