مدقق OpenAPI بصيغة JSON

الصق محتوى ملف openapi.json أو swagger.json واحصل على فحص بنيوي في ثوانٍ. تتأكد الأداة من أن JSON يُقرأ بشكل صحيح، ومن وجود حقل الإصدار، ومن أن info يحتوي على عنوان وإصدار، ومن وجود paths، ثم تحذّر من أسماء المسارات غير المعتادة ومن مفاتيح العمليات غير المعروفة.

كيفية التحقق من ملف OpenAPI بصيغة JSON

  1. 1

    انسخ الملف

    افتح ملف `openapi.json` وانسخ المستند كاملًا، من القوس الافتتاحي حتى الختامي.

  2. 2

    الصقه في الحقل

    ضعه في حقل مستند OpenAPI / Swagger. لا حاجة إلى حذف المسافات أو إعادة تنسيقه.

  3. 3

    شغّل الفحص

    انتقل إلى خطوة النتائج لتشغيل التحقق.

  4. 4

    صحّح وكرر

    عدّل الملف لكل خطأ، والصقه من جديد وأعد التشغيل حتى يخلو التقرير من الأخطاء.

أخطاء JSON الشائعة وراء فشل الفحص

صيغة JSON أشد صرامة من YAML، لذلك تأتي معظم حالات الفشل في الملفات المعدّلة يدويًا من الصياغة لا من تصميم الواجهة. الأسباب المعتادة هي فاصلة زائدة بعد آخر خاصية، أو علامات اقتباس مفردة بدل المزدوجة، أو تعليق (لا تسمح JSON بالتعليقات)، أو قوس إغلاق مفقود بعد كائن paths طويل. وعادة ما ينتهي الملف المكسور برسالة “Could not parse as JSON or YAML”، أو بأخطاء حقول مفقودة لأنه لم يُقرأ أي شيء مفيد.

إذا ظهر لك خطأ تحليل فقط، فابحث عن زلة الصياغة أولًا. تعمل الفحوص البنيوية بعد أن يُقرأ المستند ككائن.

مثال عملي

خذ هذا المستند الصغير:

{
  "openapi": "3.0.3",
  "info": { "title": "Orders API" },
  "paths": {
    "orders": { "get": { "summary": "List orders" } }
  }
}

يُقرأ الملف، وحقل openapi وكائن paths موجودان. ومع ذلك سيعرض التقرير:

النتيجة النوع السبب
info.version is required. خطأ يحتوي info على عنوان لكن لا يحتوي على version
Path ‘orders’ should start with ‘/’. تحذير مفتاح المسار لا يبدأ بشرطة مائلة

بما أن هناك خطأً واحدًا، لا يُعلَن المستند صالحًا. أضف "version": "1.0.0" إلى info وغيّر المفتاح إلى /orders. التشغيل الثاني يزيل الملاحظتين.

ماذا تعني النتيجة الناجحة وماذا لا تعني

التقرير النظيف يعني أن الهيكل سليم. لا يتتبع روابط $ref، ولا يفحص المخططات، ولا يتأكد من أن كل عملية تحتوي على استجابات. تعامل معه كبوابة سريعة قبل حفظ الملف في المستودع، ثم شغّل مدققًا شاملًا لقواعد أعمق.

سير عمل عملي لمواصفات JSON

احفظ المواصفة في نظام التحكم بالإصدارات، والصقها هنا قبل كل التزام يمسّ paths. ولأن الفحص سريع، فهو يصلح خطوة للتأكد بعد دمج تغييرات من عدة أشخاص، حين تكون المفاتيح المكررة أو القوس في غير موضعه أكثر احتمالًا. إذا كان JSON الخاص بك يولَّد من سكربت بناء، فالصق المخرجات المولَّدة لا القالب، حتى تختبر ما سيستقبله القراء فعلًا. وعندما يكون التقرير نظيفًا، يمكنك مشاركة الملف أو تسليمه لأداة توليد التوثيق بثقة أكبر في سلامة البنية على المستوى الأعلى.

الأسئلة الشائعة

لا. المسافات البيضاء والإزاحة لا تؤثران في النتيجة. الصق الملف كما هو.

لا تسمح JSON القياسية بفاصلة بعد آخر عنصر في كائن أو مصفوفة، فلا يمكن قراءة المستند كـ JSON. احذف الفاصلة وأعد الفحص.

نعم. يقبل فحص الإصدار إما الحقل openapi أو الحقل swagger، فتمر ملفات JSON الخاصة بـ Swagger 2.0 وOpenAPI 3.x من الفحص البنيوي نفسه.

لا. تُعرض الملاحظات كرسائل، مثل حقل مفقود أو اسم مسار، دون أرقام أسطر. ابحث في ملفك عن المفتاح المذكور في الرسالة.

أدوات ذات صلة

مولّد إعدادات Webpack

أنشئ ملف webpack.config.js لـ webpack 5 لمشاريع JavaScript الخالصة أو React أو Vue: مع TypeScript وBabel وCSS أو Sass والصور وHtmlWebpackPlugin وخادم التطوير وسطر npm install.

محوّل ترميز ملفات النصوص

حوّل النص بين UTF-8 وUTF-16 وLatin-1 وWindows-1252 وترميزات أخرى لإصلاح الأحرف المشوّهة.

مولّد ملف .gitignore

اجمع قواعد استبعاد المشروع لـ Laravel وNode.js وPython وRails. انسخ الناتج أو نزّل ملف ZIP يحتوي على .gitignore، مع إبقاء القواعد الشخصية منفصلة.

أداة فك ترميز Protocol Buffers

فك ترميز بايتات Protobuf محليًا من hex أو Base64 أو Base64URL أو نص أو ملف، مع فحص دقيق للحقول وتصدير تقرير خاص.

مرجع جدول ASCII

جدول ASCII كامل من 0 إلى 127 مع التمثيل العشري والست عشري والثماني والثنائي والمرجع الرقمي في HTML لكل محرف، بما في ذلك أكواد التحكم مثل NUL وLF وDEL.

أداة إزالة التشفير في لغة جافا سكريبت (JavaScript Deobfuscator)

فك تمويه شيفرة JavaScript المضغوطة أو المموّهة: فك طبقات eval وpacker، وفك ترميز السلاسل المهرَّبة، وتضمين مصفوفات السلاسل، وتبسيط الثوابت، وإعادة تسمية أسماء _0x وتنسيق الشيفرة.

الأداة متاحة بلغات أخرى

أدلة وحالات استخدام