مدقّق استجابات API

تعمل في المتصفح اختبار واجهات API

حدّد التوقعات (رمز الحالة والترويسات ونوع المحتوى وJSON Schema أو قواعد حقول بسيطة) وتحقّق من استجابة ملصوقة أو مجلوبة، للحصول على قائمة فحص بالنجاح/الفشل.

الخصوصية: تعمل هذه الأداة بالكامل في متصفحك. لا تغادر بياناتك جهازك أبداً.
جارٍ تحميل الأداة…

كيفية استخدام مدقّق استجابات API

  1. الصق الاستجابة (من curl -i أو وكيل أو أدوات المطوّر DevTools) أو جسم JSON وحده.
  2. أدخل الحالة والترويسات المتوقّعة، وقاعدة حقل واحدة في كل سطر، ومخططاً اختيارياً.
  3. تحقّق. يتحول كل توقّع إلى صف بحالة PASS أو FAIL أو ERROR (للقواعد التي تعذّر تحليلها).
  4. انسخ قائمة الفحص إلى تقرير اختبارك.

مزايا مدقّق استجابات API

  • يقبل استجابة HTTP خاماً (سطر الحالة + الترويسات + الجسم) أو جسم JSON وحده
  • الحالة المتوقّعة (200 أو 2xx أو 200,201 أو 200-204) وتوقعات الترويسات (contains / exists)
  • قواعد حقول بصيغة JSONPath: exists و== و!= والمقارنات وtype وlength وmatches وcontains وin وempty وnull
  • تحقق اختياري وفق JSON Schema مع جدول بالمخالفات
  • قائمة فحص نجاح/فشل مع القيم الفعلية، قابلة للتنزيل بصيغة CSV

مثال على مدقّق استجابات API

التحقق من استجابة مستخدم

الإدخال:

HTTP/1.1 200 OK
Content-Type: application/json

{ "status": "ok", "data": { "id": "usr_1029", "email": "layla@example.com" } }

Rules: $.data.id exists · $.data.email matches ^\S+@\S+$ · $.data.password not exists

النتيجة:

PASS · 5 checks
status 2xx — Status 200 is 2xx.
Content-Type: application/json — contains "application/json".
$.data.id exists — exists.
$.data.email matches … — matches.
$.data.password not exists — absent.

الأسئلة الشائعة حول مدقّق استجابات API

ماذا يمكنني أن ألصق؟

إما استجابة HTTP الخام (سطر الحالة، والترويسات، وسطر فارغ، والجسم — كما يطبعها curl -i) أو جسم JSON وحده. تحتاج فحوصات الحالة والترويسات إلى الاستجابة الخام.

ما قواعد الحقول المدعومة؟

مسار JSONPath يتبعه شرط: exists، أو not exists، أو == value، أو != value، أو > < >= <= n، أو type string|number|integer|boolean|array|object|null، أو length >= n، أو matches <regex>، أو contains <x>، أو in [a, b]، أو empty، أو not empty، أو null، أو not null.

هل يمكنني استخدام JSON Schema أيضاً؟

نعم. الصق مخططاً (بكلمات draft-07 / 2019-09 / 2020-12 المفتاحية) وسيُتحقّق من الجسم وفقه؛ وتُسرد المخالفات مع مساراتها.

هل تجلب الأداة عنوان URL نيابةً عني؟

لا — تتحقق مما تلصقه فقط. استخدم مختبِر REST API لإرسال الطلب وإضافة التأكيدات على استجابة حيّة.

ملاحظات تقنية

تُقيَّم القواعد على أول تطابق لمسار JSONPath. وتُحلَّل قيم المقارنة الحرفية بوصفها JSON (فتتصرف 42 وtrue و"text" كما هو متوقّع)؛ أما المعاملات غير الرقمية فتفشل في المقارنات الرقمية مع رسالة واضحة بدلاً من النجاح بصمت.