مرحبًا بكم، عشاق Python! سواء كنت مطورًا متمرسًا أو كنت مبتدئًا، فإن العمل مع APIs هو شيء لا يمكنك تجنبه في مشهد التكنولوجيا اليوم. أحد الجوانب الرئيسية للتفاعل مع APIs هو معرفة كيفية التحقق من حالة الطلبات الخاصة بك. لا يساعدك ذلك فقط في تصحيح الأخطاء، ولكنه يضمن أيضًا أن يعمل تطبيقك كما هو متوقع. في هذه المقالة، سنتناول بالتفصيل كيفية التحقق من حالات الطلبات في Python. سنغطي كل شيء من الأساسيات إلى التقنيات المتقدمة، وبنهاية المقال، ستكون محترفًا في التعامل مع استجابات API. بالإضافة إلى ذلك، سنقدم لك Apidog، أداة رائعة لتبسيط عملية تطوير API الخاصة بك. جاهز؟ لنبدأ!
ما هي طلبات API؟
طلبات API هي الطريقة التي تتواصل بها تطبيقاتنا مع الخدمات الأخرى. فكر في APIs (واجهات برمجة التطبيقات) ك Bridges تربط بين أنظمة البرمجيات المختلفة، مما يسمح لها بمشاركة البيانات والوظائف. عندما تقوم بعمل طلب API، فإنك تطلب أساسًا من خدمة أخرى أن تقدم لك بعض المعلومات أو أن تؤدي إجراء معين.
إعداد بيئة Python الخاصة بك
قبل أن نبدأ في التحقق من حالات الطلبات، دعنا نعد بيئة Python الخاصة بنا. ستحتاج إلى تثبيت Python على جهازك. إذا لم تقم بذلك بعد، توجه إلى الموقع الرسمي لـ Python وقم بتنزيل أحدث إصدار.

بعد ذلك، ستحتاج إلى تثبيت مكتبة requests
. تجعل هذه المكتبة من السهل جدًا إرسال طلبات HTTP باستخدام Python. افتح الطرفية أو موجه الأوامر وادخل الأمر التالي:
pip install requests
رائع! الآن أنت مستعد لبدء إجراء طلبات API.
قم بعمل أول طلب API الخاص بك
لنبدأ بشيء بسيط من طلب API. سنستخدم API عامة تقدم نكت عشوائية. إليك مقطع صغير من الكود لتبدأ:
import requests
response = requests.get('https://official-joke-api.appspot.com/random_joke')
print(response.json())
قم بتشغيل هذا الكود، ويجب أن ترى نكتة عشوائية تظهر. رائع، أليس كذلك؟
التحقق من حالة الطلب
استخدام مكتبة requests
الآن، دعنا نركز على الموضوع الرئيسي: التحقق من حالة طلباتنا. في كل مرة تقوم فيها بعمل طلب API، يقوم الخادم بالاستجابة برمز حالة. هذا الرمز يخبرك ما إذا كان طلبك ناجحًا أو إذا كان هناك خطأ ما.
تجعل مكتبة requests
من السهل التحقق من رمز الحالة للاستجابة. إليك كيفية القيام بذلك:
import requests
response = requests.get('https://official-joke-api.appspot.com/random_joke')
print(response.status_code)
سيقوم هذا بطباعة رمز الحالة للاستجابة. رمز الحالة 200
يعني أن كل شيء سار بسلاسة، بينما تشير الرموز الأخرى إلى مشكلات متنوعة.
فهم رموز حالة HTTP
لننظر نظرة سريعة على بعض رموز حالة HTTP الشائعة وما تعنيه:
- 200 OK: كان الطلب ناجحًا، وأعاد الخادم البيانات المطلوبة.
- 201 تم الإنشاء: كان الطلب ناجحًا، وتم إنشاء مورد جديد.
- 400 طلب غير صحيح: لم يتمكن الخادم من فهم الطلب بسبب بناء جملة غير صحيح.
- 401 غير مصرح: يجب على العميل أن يصادق نفسه للحصول على الاستجابة المطلوبة.
- 404 غير موجود: لم يتمكن الخادم من العثور على المورد المطلوب.
- 500 خطأ داخلي في الخادم: واجه الخادم شرطًا غير متوقع منع من الوفاء بالطلب.
معالجة رموز الحالة المختلفة
فهم كيفية التعامل مع رموز الحالة المختلفة أمر بالغ الأهمية لبناء تطبيقات قوية. دعنا نمر ببعض الأمثلة.
200 OK
عندما تتلقى رمز حالة 200 OK
، فهذا يعني أن طلبك كان ناجحًا. إليك كيفية التعامل مع ذلك:
if response.status_code == 200:
print("كان الطلب ناجحًا!")
print(response.json())
else:
print("هناك خطأ ما!")
404 غير موجود
تشير رمز الحالة 404 غير موجود
إلى أن المورد المطلوب لم يتم العثور عليه. قد ترغب في التعامل مع ذلك بلطف في تطبيقك:
if response.status_code == 404:
print("المورد غير موجود.")
else:
print("هناك خطأ ما!")
500 خطأ داخلي في الخادم
تشير رمز الحالة 500 خطأ داخلي في الخادم
إلى أن هناك خطأ ما على جانب الخادم. إليك كيفية التعامل معه:
if response.status_code == 500:
print("خطأ داخلي في الخادم. يرجى المحاولة لاحقًا.")
else:
print("هناك خطأ ما!")
تقنيات متقدمة للتحقق من حالة الطلب
استخدام try-except
لمعالجة الأخطاء
لجعل الكود الخاص بك أكثر قوة، يمكنك استخدام كتل try-except
للتعامل مع الاستثناءات. بهذه الطريقة، لن تنهار تطبيقك إذا حدث خطأ ما:
try:
response = requests.get('https://official-joke-api.appspot.com/random_joke')
response.raise_for_status() # Raises an HTTPError if the status is 4xx, 5xx
print(response.json())
except requests.exceptions.HTTPError as err:
print(f"حدث خطأ HTTP: {err}")
except Exception as err:
print(f"حدث خطأ آخر: {err}")
تنفيذ إعادة المحاولة للطلبات الفاشلة
أحيانًا، قد تفشل الطلبات بسبب مشاكل مؤقتة. يمكن أن يساعد تنفيذ إعادة المحاولة في تحسين موثوقية تطبيقك. لا تدعم مكتبة requests
إعادة المحاولة بشكل افتراضي، ولكن يمكنك استخدام مكتبة urllib3
لتحقيق ذلك:
from requests.adapters import HTTPAdapter
from requests.packages.urllib3.util.retry import Retry
session = requests.Session()
retry = Retry(
total=3, # إجمالي عدد محاولات الإعادة
backoff_factor=0.1, # وقت الانتظار بين محاولات الإعادة
status_forcelist=[500, 502, 503, 504] # إعادة المحاولة لهذه الرموز الحالة
)
adapter = HTTPAdapter(max_retries=retry)
session.mount('http://', adapter)
session.mount('https://', adapter)
try:
response = session.get('https://official-joke-api.appspot.com/random_joke')
response.raise_for_status()
print(response.json())
except requests.exceptions.HTTPError as err:
print(f"حدث خطأ HTTP: {err}")
except Exception as err:
print(f"حدث خطأ آخر: {err}")
دمج Apidog من أجل إدارة أفضل API
الآن بعد أن تعرفت على كيفية التحقق من حالات الطلبات في Python، دعنا نتحدث عن Apidog. Apidog هي أداة مذهلة تبسط تطوير API. فهي توفر مجموعة من الميزات لتصميم واختبار وإدارة APIs. مع Apidog، يمكنك:
كيفية إرسال طلب API باستخدام Python باستخدام Apidog
- افتح Apidog وانقر على زر "طلب جديد" لإنشاء طلب جديد.

2. اختر "GET" كطريقة للطلب.

3. أدخل عنوان URL لنهاية API

ثم انقر على زر "إرسال" لإرسال الطلب إلى API.

كما ترى، يظهر لك Apidog عنوان URL، والمعلمات، والرؤوس، وجسم الطلب، وحالة، والرؤوس، وجسم الاستجابة. يمكنك أيضًا رؤية وقت الاستجابة، والحجم، وصيغة الطلب والاستجابة، ومقارنتها مع APIs الويب المختلفة.
كيفية إجراء اختبار الأوتوماتيكي باستخدام Python باستخدام Apidog
إليك دليل خطوة بخطوة حول كيفية أتمتة اختبار API باستخدام Apidog:
افتح مشروع Apidog الخاص بك وانتقل إلى واجهة الاختبار

تصميم سيناريوهات الاختبار الخاصة بك: يمكنك تصميم سيناريوهات الاختبار الخاصة بك في Apidog.

تشغيل اختباراتك: يمكنك تشغيل اختباراتك في Apidog.

تحليل نتائج الاختبار وتحسينها: بعد تشغيل اختباراتك، يمكنك تحليل نتائج الاختبار وتحسين اختباراتك وفقًا لذلك.

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