مقارنة استجابات API

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

مقارنة دلالية بين استجابتي JSON مع خيارات لتجاهل الحقول المتقلّبة (الطوابع الزمنية والمعرّفات) أو ترتيب المصفوفات أو مسارات محدّدة — تنتج تقرير فروق واضحاً.

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

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

  1. الصق الاستجابة A (مثل بيئة التجريب) والاستجابة B (مثل الإنتاج).
  2. أبقِ خيار «تجاهل الحقول المتقلّبة» مفعّلاً، وأضف أي مسارات إضافية لتجاهلها، واختر طريقة التعامل مع ترتيب المصفوفات.
  3. قارن. يخبرك الملخّص ما إذا كانت الاستجابتان متكافئتين؛ ويسرد الجدول كل فرق مع مساره.
  4. استخدم العرض السطري للحصول على فروق بصرية ونزّل الجدول بصيغة CSV.

مزايا مقارنة استجابات API

  • مقارنة JSON دلالية — لا يُعدّ ترتيب المفاتيح ولا التنسيق فرقاً أبداً
  • تجاهل الحقول المتقلّبة (المعرّفات والطوابع الزمنية وetags والرموز والمؤشرات cursors) بمربع اختيار واحد
  • تجاهل مسارات بأنماط: $.meta.requestId أو $.items[*].updatedAt أو **.etag أو أسماء مفاتيح مجرّدة
  • خيار تجاهل ترتيب المصفوفات ووضع اعتبار null مساوياً للحقل المفقود
  • جدول فروق (في A فقط / في B فقط / تغيّر / تغيّر النوع) وقائمة بالحقول المتجاهَلة وفروق سطرية

مثال على مقارنة استجابات API

بيئة التجريب مقابل الإنتاج

الإدخال:

A: { "status": "paid", "customer": { "id": "cust_9" }, "updatedAt": "2025-08-30T10:00:00Z" }
B: { "status": "PAID", "customer": { "id": "cust_9", "tier": "gold" }, "updatedAt": "2025-08-31T09:12:44Z" }

النتيجة:

Different · Added in B 1 · Changed 1 · Ignored: $.updatedAt
$.status        changed    "paid" → "PAID"
$.customer.tier only in B  – → "gold"

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

ماذا يفعل خيار «تجاهل الحقول المتقلّبة»؟

يتخطى المفاتيح التي تختلف عادةً بين البيئات والطلبات — المعرّفات، والطوابع الزمنية (createdAt وupdatedAt…)، وetags، ومعرّفات الطلبات/التتبّع، والرموز، والمؤشرات (cursors) — حتى تُظهر المقارنة الفروق المهمة فقط.

كيف تعمل مسارات التجاهل؟

نمط واحد في كل سطر: مسار JSON دقيق ($.meta.requestId)، أو حرف بدل للمصفوفات ($.items[*].updatedAt)، أو حرف بدل عميق (**.etag)، أو اسم مفتاح مجرّد لتجاهله في كل مكان.

هل يهمّ ترتيب المفاتيح؟

لا — المقارنة دلالية. فعّل خيار «تجاهل ترتيب المصفوفات» إذا كانت واجهة API تعيد القوائم بترتيب غير حتمي.

لماذا يُبرَز تغيّر النوع بشكل منفصل؟

القيمة التي تتغير من عدد إلى سلسلة نصية (أو من كائن إلى null) تعطّل العملاء عادةً، لذا تُحتسب تغيّراً في النوع لا مجرّد تغيّر في القيمة.

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

تُزال الحقول المتجاهَلة من المستندين قبل تشغيل المقارنة البنيوية. ويعتمد اكتشاف المفاتيح المتقلّبة على تعبير نمطي منتقى بعناية (id وuuid وcreatedAt وupdated_at وetag وrequestId وnonce وtoken وcursor…).