جانغو هو إطار عمل ويب بايثون عالي المستوى مصمم لمساعدة المطورين على بناء تطبيقات الويب بسرعة وسهولة. إنه مجاني ومفتوح المصدر وله مجتمع كبير ونشط من المطورين.
في هذه التدوينة، سنركز على أحد الجوانب الأكثر أهمية في جانغو - التعامل مع طلبات GET وكيفية الحصول على الطلبات مع جانغو باستخدام Apidog، أداة رائعة لتطوير واختبار واجهات برمجة التطبيقات، لجعل حياتك أسهل.
هل أنت مستعد لتجربة مستقبل تطوير واجهات برمجة التطبيقات؟ قم بتنزيل Apidog مجاناً وابدأ في اختبارها الآن!
ما هو جانغو؟
جانغو هو إطار عمل ويب قوي وشائع يسمح لك بإنشاء تطبيقات ويب مذهلة بسهولة. واحدة من المهام الأكثر شيوعًا التي ستواجهها كمطور جانغو هي التعامل مع طلبات GET من المستخدمين. طلب GET هو وسيلة لإرسال البيانات إلى الخادم من خلال عنوان URL. على سبيل المثال، إذا كنت تريد البحث عن شيء ما على جوجل، يمكنك استخدام طلب GET مثل هذا:
https://www.google.com/search?q=django

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

هناك أنواع مختلفة من طلبات HTTP، المعروفة أيضاً باسم طرق HTTP، والتي تشير إلى الغرض وطبيعة الطلب. أكثر طرق HTTP شيوعاً هي:
- GET: تستخدم لطلب البيانات من الخادم، مثل صفحة ويب، صورة، أو ملف JSON. طريقة GET لا تعدل أي بيانات على الخادم، بل تسترجعها فقط.
- POST: تستخدم لإرسال البيانات إلى الخادم، مثل إرسال نموذج، تحميل ملف، أو طلب تسجيل دخول. عادةً ما تعدل طريقة POST البيانات على الخادم، مثل إنشاء، تحديث، أو حذف مورد.
- PUT: تستخدم لتحديث أو استبدال البيانات على الخادم، مثل تعديل مورد موجود. طريقة PUT مشابهة لـ POST، ولكنها أكثر تحديدًا وثباتًا، مما يعني أن الطلبات المتماثلة العديدة سيكون لها نفس تأثير الطلب الواحد.
- DELETE: تستخدم لحذف البيانات من الخادم، مثل إزالة مورد. طريقة DELETE أيضاً ثابته، مما يعني أن الطلبات المتماثلة العديدة سيكون لها نفس تأثير الطلب الواحد.
فهم أساسيات طلبات GET في جانغو
في تطوير الويب، تُستخدم GET وPOST كأكثر طرق HTTP شيوعًا. بينما تُستخدم POST بشكل أساسي لإرسال البيانات إلى الخادم، تستخدم GET لاسترجاع البيانات من الخادم. طلب GET هو أحد أكثر أنواع طلبات HTTP شيوعًا التي يمكنك استخدامها للتواصل مع خادم الويب. على سبيل المثال، إذا كنت تريد الحصول على آخر الأخبار من موقع ويب، يمكنك استخدام طلب GET مثل هذا:
https://www.example.com/news
يمكن أن يتضمن طلب GET أيضًا معلمات تحدد نوع البيانات التي تريد الحصول عليها. على سبيل المثال، إذا كنت تريد الحصول على الأخبار لفئة معينة، يمكنك استخدام طلب GET مثل هذا:
https://www.example.com/news?category=sports
عندما ينقر المستخدم على رابط أو يقدم نموذجًا مع تعيين الطريقة إلى GET، يتم إرسال طلب GET إلى الخادم. ثم يقوم الخادم بمعالجة الطلب وإرجاع البيانات المطلوبة إلى المستخدم. في جانغو، يتضمن التعامل مع طلبات GET التقاط المعلمات المرسلة في عنوان URL واستخدامها لاسترجاع البيانات ذات الصلة من قاعدة البيانات أو تنفيذ إجراءات معينة.
الآن بعد أن عرفت ما هو طلب GET ولماذا تستخدمه، دعنا نرى كيفية الحصول على البيانات من طلبات GET في جانغو.
إعداد مشروع جانغو الخاص بك لطلبات GET
لبدء التعامل مع طلبات GET في جانغو، تحتاج أولاً إلى إعداد مشروع جانغو الخاص بك. إذا كنت جديداً على جانغو، لا تقلق! سنوجهك خلال العملية خطوة بخطوة.

- تثبيت جانغو: ابدأ بتثبيت جانغو على نظامك. يمكنك القيام بذلك عن طريق تشغيل الأمر التالي في terminal:
pip install Django
- إنشاء مشروع جانغو: بمجرد تثبيت جانغو، قم بإنشاء مشروع جانغو جديد عن طريق تشغيل الأمر التالي:
django-admin startproject myproject
- إنشاء تطبيق جانغو: بعد إنشاء المشروع، انتقل إلى دليل المشروع وأنشئ تطبيق جانغو جديد:
cd myproject
python manage.py startapp myapp
- تهيئة توجيه URL: بعد ذلك، تحتاج إلى تهيئة توجيه URL في مشروع جانغو الخاص بك. افتح ملف
urls.py
الموجود في دليل مشروعك وحدد أنماط URL لتطبيقك.
تنفيذ طلبات GET في جانغو
الآن بعد أن قمت بإعداد مشروع جانغو الخاص بك، دعنا نتعمق في تنفيذ طلبات GET. هناك عدة طرق للتعامل مع طلبات GET في جانغو، اعتمادًا على تعقيد تطبيقك والوظائف المطلوبة. هنا، سنغطي طريقتين مستخدمتين بشكل شائع: استخدام وجهات نظر تعتمد على الدوال ووجهات نظر تعتمد على الفئات.
استخدام وجهات نظر تعتمد على الدوال
تعتبر وجهات النظر المعتمدة على الدوال الطريقة الأكثر بساطة للتعامل مع طلبات GET في جانغو. تسمح لك بتعريف دالة بايثون تأخذ طلبًا كوسيط وترجع ردًا. إليك مثال على دالة تعتمد على وجهة نظر تتعامل مع طلب GET:
from django.http import HttpResponse
def my_view(request):
if request.method == 'GET':
# استرجاع البيانات من الخادم
data = retrieve_data()
return HttpResponse(data)
في هذا المثال، تتحقق دالة my_view
مما إذا كانت طريقة الطلب هي GET وتسترجع البيانات من الخادم باستخدام دالة retrieve_data
. ثم تعيد استجابة HTTP تحتوي على البيانات المسترجعة.
استخدام وجهات نظر تعتمد على الفئات
توفر وجهات النظر المعتمدة على الفئات طريقة أكثر تنظيماً وإعادة استخدام للتعامل مع طلبات GET في جانغو. تسمح لك بتعريف فئة ترث من فئة View
الخاصة بجانغو وتطبيق طرق مختلفة لطرق HTTP المختلفة. إليك مثال على فئة تعتمد على وجهة نظر تتعامل مع طلب GET:
from django.views import View
from django.http import HttpResponse
class MyView(View):
def get(self, request):
# استرجاع البيانات من الخادم
data = retrieve_data()
return HttpResponse(data)
في هذا المثال، تحدد فئة MyView
طريقة get
التي تعالج طلب GET. داخل طريقة get
، يمكنك استرجاع البيانات من الخادم وإرجاع استجابة HTTP.
تقنيات متقدمة للتعامل مع طلبات GET في جانغو
بمجرد أن يكون لديك فهم أساسي لكيفية التعامل مع طلبات GET في جانغو، يمكنك استكشاف بعض التقنيات المتقدمة لتعزيز وظائف تطبيقك. إليك بعض التقنيات التي يمكنك النظر فيها:
معلمات الاستعلام
تتيح لك معلمات الاستعلام تمرير معلومات إضافية في عنوان URL واسترجاعها في وجهة نظر جانغو الخاصة بك. على سبيل المثال، يمكنك تمرير استعلام بحث كمعلمة استعلام واستخدامها لتصفية البيانات المسترجعة. إليك مثال على كيفية التعامل مع معلمات الاستعلام في جانغو:
def my_view(request):
search_query = request.GET.get('q')
if search_query:
# تصفية البيانات بناءً على استعلام البحث
filtered_data = filter_data(search_query)
return HttpResponse(filtered_data)
في هذا المثال، يتم استرجاع قيمة معلمة الاستعلام q
باستخدام عبارة request.GET.get('q')
. إذا تم تقديم استعلام بحث، تقوم دالة filter_data
بتصفية البيانات بناءً على الاستعلام وتعيد البيانات المصفاة.
العمل مع واجهات برمجة التطبيقات
يوفر جانغو أدوات قوية للعمل مع واجهات برمجة التطبيقات واستهلاك البيانات من مصادر خارجية. يمكنك استخدام مكتبة requests
المدمجة في جانغو أو المكتبات الشائعة الخاصة بالأطراف الثالثة مثل requests
أو http.client
لإجراء طلبات واجهة برمجة التطبيقات واسترجاع البيانات. إليك مثال على كيفية استرجاع البيانات من واجهة برمجة التطبيقات في جانغو:
import requests
def my_view(request):
response = requests.get('https://api.example.com/data')
if response.status_code == 200:
data = response.json()
return HttpResponse(data)
else:
return HttpResponse("خطأ في استرجاع البيانات")
في هذا المثال، تقوم دالة requests.get
بإرسال طلب GET إلى نقطة نهاية واجهة برمجة التطبيقات المحددة. إذا كان الطلب ناجحًا (رمز الحالة 200)، تُعاد البيانات المسترجعة كاستجابة HTTP. خلاف ذلك، يتم إرجاع رسالة خطأ.
كيفية استخدام Apidog لإجراء طلب GET في جانغو
Apidog هي أداة تساعدك في تصميم وتصحيح واختبار وتوثيق واجهات برمجة التطبيقات الخاصة بك بطريقة سريعة وممتعة. يعتمد Apidog على مفهوم تصميم واجهة برمجة التطبيقات أولاً، مما يعني أنك تبدأ بتحديد الهيكل والسلوك الخاص بواجهة برمجة التطبيقات الخاصة بك قبل كتابة أي كود. بهذه الطريقة، يمكنك التأكد من أن واجهة برمجة التطبيقات الخاصة بك متسقة وواضحة وسهلة الاستخدام.
إليك كيفية استخدام Apidog لإرسال طلبات GET مع معلمات:
- افتح Apidog، وانقر على زر طلب جديد.

2. أدخل عنوان URL لنقطة نهاية واجهة برمجة التطبيقات التي تريد إرسال طلب GET إليها

3. انقر على زر إرسال لإرسال الطلب والحصول على النتيجة

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