مقدمة
في هذا التورية، ستتعلم كيفية إنشاء رسمي باي بي إس بواسطة Flask، وهي إطار ويب بالانتاج الخفيف للبرمجيات البينات. سنقوم بالبناء الأساسي لتطبيق Flask، وبتحديد المسارات، وتعامل الطلبات، وإيرادات البيانات الجاف. بنهاية هذه التورية، سيكون لديك تطبيق عمل يمكنك توسيعه ودمجه مع أخرى التطبيقات.
المقاييس السابقة
-
خوادم تشغيل Ubuntu ومستخدم غير رئيسي بمساواة تفويض والنظام من النظام المواجه للنار. للمراجعة إلى كيفية تأسيس هذا الاحداث، يرجى اختيار توزيعك الموجود في هذا القائمة وتتبع دراستك البدائية للخوادم الأولية. يرجى تأكد من العمل بنسخ النسخ المدعومة من Ubuntu.
-
معرفة بالخطأ الرسمي للأجهزة اللinux. إذا كان لديك عدد قليل من المعرفة أو الحاجة إلى تجديد ذلك، يمكنك الذهاب إلى هذه الدرسة البسيطة عن الخطأ الرسمي للأجهزة اللinux.
-
فهم بدئي للبرمجة بالبوتسوير.
-
تثبيت Python 3.7 أو أعلى في نظامك الأوبونتو. لتعلم كيفية تشغيل 脚本 Python في Ubuntu، يمكنك المرور إلى درسنا التورية عن كيفية تشغيل 脚本 Python في Ubuntu.
خطوة 1 — إعداد بيئة فلاسك
أوبونت 24.04 يشترك ببيثون 3 بالإفتراض. افتح المستودع وأجراء أوامر التحقيق للتأكد من تشغيل بيثون 3:
إذا كانت بيثون 3 متنشئة بالحاسوب الخاص بك، ستعود أوامر الأعلاه على إصدار التثبيت الحالي لبيثون 3. في حالة عدم تثبيتها، يمكنك أن تتمكن من تثبيتها بواسطة الأمر التالي:
من ثم، يتوجب عليك تثبيت موجه التركيب الpip
على نظامك:
بمجرد تثبيت pip
، دعونا نتثبيت Flask.
ستتثبيت Flask من خلال pip
. يوصف بهذا التوجه القيام به في بيئة فارغة لتجنب تضاربات مع بعض المعاملات الأخرى على نظامك.
الخطوة 2 – إنشاء تطبيق Flask
الخطوة المقبلة هي كتابة تشغيل البرمجيات الخاصة بـ Flask. لإنشاء ملف برمجيات جديد، تحول إلى مجال من الخيار:
حين الوصول إلى المجلد، قم بإنشاء ملف برمجيات برمجيات Python جديد، app.py,
و قم بتحميل Flask. بعدها، قم بتشغيل تطبيق Flask و خلق مسار بسيط.
سيتم فتح محرر نصوص فارغ. قم بكتابة منطقك هنا أو قم بنسخ البعض من البرمجيات التالية:
الخطوة 3 – إنشاء مسارات RESTful
في هذا القسم، سنتعرف على مسارات في تطبيقنا ال Flask التي تمارس بالتوافق مع أفعال المستخدمين على ال API. ستقوم كل مسار بتقديم تلك الطريقة الخاصة بـ HTTP.
GET
, POST
, PUT
, وDELETE
. هذه الطرق تتطابق مع الأعمال الأساسية للتخزين الدائمي — وهي في الغالب تسمى CRUD (إنشاء، قراءة، تحديث، حذف).
أضف مسارات التالية إلى 脚本app.py
البيثون:
دعونا نتعرف أكثر عن ما يفعل كل وظيفة:
-
استيرادات Flask: الكود يستيرد مكونات ضرورية من Flask:
Flask
,jsonify
, وrequest
. -
مخزن بيانات الذاكرة:
items
هي قائمة بالمعاملات البسيطة تؤدي كمخزن مؤقت للAPI. كل بند يمتلكid
وname
. - GET
/api/items
: عندما يتم إدراج sol·reqGET
إلى/api/items
, يعيد الخادم إرجاع قائمة بجميع العناصر في قاعدة بيانات العناصر. هذا مفيد للحصول على جميع الموارد في مجموعة. -
POST
/api/items
: يتيح إدراج sol·reqPOST
إلى/api/items
للعميل أن يخلق عنصر جديد. الخادم يتوقع أجسام العنصر الجديد في جسم ال sol·req. بعد إنشاء العنصر، يستجيب الخادم بالعنصر الجديد المنشور ورمز201 Created
. -
PUT
/api/items/<int:item_id>
: يستخدم إدراج sol·reqPUT
إلى/api/items/<item_id>
لتحديث العنصر الموجود بالمعرفitem_id
. يرسل العميل البيانات المتحدثة في جسم ال sol·req، ويغير الخادم العنصر الموجود. إذا لم يجد العنصر، يعيد الخادم إرجاع خطأ404 Not Found
. -
DELETE
/api/items/<int:item_id>
: يُستخدم طلبDELETE
إلى/api/items/<item_id>
لإزالة العنصر بالمعرف المحددitem_id
من قاعدة البيانات. إذا تم حذف العنصر بنجاح، يستجيب الخادم برمز حالة204 No Content
، مما يشير إلى أن الحذف تم بنجاح ولا يوجد محتوى آخر لإرجاعه. -
تشغيل التطبيق: يضمن الكود
if __name__ == "__main__":
تشغيل تطبيق Flask عند تنفيذ السكربت مباشرة.
خطوة 4 — تشغيل وتفقد منصة ال-API الخاصة بك
قم بتشغيل مزيد من خلال أوامر البرمجيات والتي تلي بالأوامر التالية:
يمكنك أن تلاحظ الخوادم البرمجية تشغيلها والمخرج التالي:
ومن خلال المخرج السابق يمكنك أن تلاحظ أن الخوادم تشغيل على http://127.0.0.1
وتستمع إلى قناة 5000
.
والآن، يمكنك تختبر النقاط النهائية بواسطة curl
، Postman أو 客户端 HTTP آخر. في هذا التوريتال سوف تستخدم curl
لتختبر النقاط النهائية وإرسال ال solicitudes HTTP.
افتح console Ubuntu آخر وأجرب الأوامر curl
التالية واحدة بعد الأخرى:
- GET:
curl http://127.0.0.1:5000/api/items
- POST:
curl -X POST -H "Content-Type: application/json" -d '{"name": "This is item 3"}' http://127.0.0.1:5000/api/items
- PUT:
curl -X PUT -H "Content-Type: application/json" -d '{"name": "This is updated item 1"}' http://127.0.0.1:5000/api/items/1
- DELETE:
curl -X DELETE http://127.0.0.1:5000/api/items/1
دعونا نرى كل من هذه الأوامر في عمل:
سوف تلاحظ أن المخزن الخاص بي يعيد قائمة بجميع البنود في المخزن الخاص بالبنادق.
باستخدام طريقة POST
، دعونا نضيف بند جديد إلى المخزن.
ملاحظة: في مسجلك الآخر حيث يعمل مخزنك الفلاسكا سوف تلاحظ جميع ال solicitudes HTTP التي يتم إجراؤها وأيضًا رموز الردود.
هذه طريقة عظيمة لرصد وتصحيح وحل أي مشاكل مع المخزن.
من ثم دعونا نقوم بتنفيذ solicitud PUT
. سيتم تحديث بند قائم بالitem_id
المحدد بواسطة ال solicitud PUT
إلى /api/items/<item_id>
.
الآن دعونا نقوم بتنفيذ solicitud GET
لرؤية البند المحدد 1 المتحدث.
وأخيرًا دعونا نقوم بتنفيذ solicitud DELETE
لحذف بند من المخزن.
هذا سيحذف البند 1 من المخزن.
للتحقق من هذا دعونا نقوم بتنفيذ solicitud GET
.
سوف تلاحظ أن عنصر 1 لم يعد موجودًا وتم حذفه بشكل دائمي.
الخاتم
في هذا التوريتال، قمت ببناء تطبيق REST API باستخدام Flask. يمكنك الآن توسيع هذه ال API بالمسارات الإضافية، أو دمجها مع قاعدة بيانات، أو تنقلها إلى منصة سحابية مثل DigitalOcean. Flask أداة قوية لبناء APIs بسرعة وبفعالية جيدة، ومع هذه الأساسيات، أنت مستعد لبناء تطبيقات أكثر تعقيدًا.
Source:
https://www.digitalocean.com/community/tutorials/create-a-rest-api-using-flask-on-ubuntu