ما يفعله التحقق من مخطط JSON
JSON Schema هو مفردات لوصف بنية وقيود مستندات JSON. يحدد المخطط الأنواع المتوقعة والخصائص المطلوبة وأنماط السلاسل والنطاقات العددية وأطوال المصفوفات والقيم المسموح بها لكل جزء من مستند JSON. يتحقق التحقق من المستند مقابل هذه القواعد ويُبلّغ عن كل انتهاك بمسار JSON Pointer دقيق.
يدعم المحقق جميع كلمات JSON Schema الرئيسية: type وproperties وrequired وadditionalProperties وitems وminItems وmaxItems وminimum وmaximum وminLength وmaxLength وpattern وenum وconst وoneOf وanyOf وallOf وnot وif/then/else و$ref لتركيب المخططات.
تتضمن أخطاء التحقق الكلمة المفتاحية الفاشلة ومسار المخطط ومسار المثيل ورسالة مقروءة بشريًا. تُجمَع أخطاء متعددة وتُعرض معًا حتى تتمكن من إصلاح جميع المشكلات في مرور واحد.
كتابة واختبار مخططات JSON
قد يتطلب مخطط JSON بسيط لكائن مستخدم API عددًا صحيحًا "id" وسلسلة "name" وسلسلة "email" تطابق نمطًا. عند تحسين المخطط يمكنك لصق مستندات اختبار للتحقق من أنها تنجح أو تفشل كما هو متوقع.
تتيح الكلمة المفتاحية $ref تركيب مخططات معقدة من تعريفات قابلة لإعادة الاستخدام. تُحَلّ المخططات المكتوبة بـ $defs (Draft 2020-12) أو definitions (Draft-07) بالكامل قبل التحقق حتى تعمل المخططات الدائرية ومتعددة المراجع بشكل صحيح.
عند تطوير عقود API تستخدم الفرق JSON Schema لتوثيق شكل أجسام الطلب والاستجابة. يتيح المحقق لصق استجابة API حقيقية إلى جانب المخطط لتأكيد أن API تتصرف كما هو موثّق.
التكامل والأدوات
يُستخدم JSON Schema من قِبَل أدوات رئيسية تشمل OpenAPI/Swagger وAsyncAPI وJSON Forms وIntelliSense في Monaco Editor. التحقق من مخططاتك هنا قبل تضمينها يضمن أنها صحيحة نحويًا ومتسقة منطقيًا.
يمكن لخطوط CI/CD استخدام التحقق من مخطط JSON للتحكم في عمليات النشر: التحقق من ملفات الإعداد وعقود API وملفات ترحيل البيانات كجزء من عملية البناء. المحققون الشائعون مثل Ajv وjsonschema وnetworknt/json-schema-validator متوافقون جميعًا.
تستخدم فرق جودة البيانات JSON Schema للتحقق من السجلات الواردة من الشركاء الخارجيين وخطوط ETL ووظائف استيعاب مستودع البيانات. اكتشاف انتهاكات المخطط عند الاستيعاب يمنع البيانات الفاسدة من الانتشار في الأنظمة اللاحقة.