لماذا ينكسر JSON وكيف نصلحه
تعمل صيغة JSON وفق قواعد صارمة: فاصلة في غير مكانها، أو مفتاح بدون علامات اقتباس، أو قوس لم يُغلق — كل ذلك يُثير خطأ SyntaxError ويجعل البيانات بأكملها غير قابلة للاستخدام. يحدث هذا غالباً عند كتابة JSON يدوياً، أو نسخه من مستندات، أو توليده بواسطة نماذج لغوية كبيرة تُهلوس أحياناً في الصياغة.
يُحلل محرك الإصلاح لدينا المدخلات باستخدام خوارزمية متسامحة مع الأخطاء تتعرف على أكثر أنماط الفساد شيوعاً: الفواصل الزائدة قبل الأقواس الختامية، والنصوص بين علامات اقتباس مفردة، والمفاتيح غير المقتبسة، والفواصل الناقصة بين القيم، والنصوص أو الحاويات غير المغلقة، وأحرف التحكم الغريبة. يسعى المحرك إلى إجراء أدنى قدر من التعديلات.
بعد الإصلاح، يُعاد التحقق من صحة النتيجة وفق مواصفة JSON (ECMA-404) ويُنسَّق للقراءة السهلة. إن كانت المدخلات تالفة بشكل كامل، تُخبرك الأداة بالضبط بما لم تستطع فهمه لتتمكن من إصلاح ذلك القسم يدوياً.
المصادر الشائعة لـ JSON المعطوب
يُمثل JSON الذي تولّده أنظمة الذكاء الاصطناعي المصدرَ الأسرع نمواً لأخطاء الصياغة. تفوّت نماذج مثل GPT-4 أو Claude أحياناً قوساً ختامياً، أو تُضيف فاصلة بعد آخر عنصر في مصفوفة، أو تُحيط المفاتيح بعلامات اقتباس مفردة بدلاً من المزدوجة. يكفي لصق المخرجات الخام في هذه الأداة لحل جميع هذه المشكلات بنقرة واحدة.
ملفات الإعدادات التي يُحررها المطورون يدوياً سبب متكرر آخر. من يُضيف مفتاحاً جديداً في نهاية كائن يكثيراً ما ينسى الفاصلة بعد الإدخال السابق، أو يترك سطر تعليق (مسموح في JSON5، محظور في JSON) يُعطّل المُحلِّلين.
يُدخل النسخ واللصق من ملفات PDF أو محرري النصوص المنسّقة "علامات اقتباس طباعية" (U+201C / U+201D) التي تبدو كعلامات اقتباس مزدوجة لكنها ليست حرف ASCII الذي يتطلبه JSON. تكشف أداة الإصلاح هذه العلامات وتستبدلها تلقائياً.
متى تستخدم الإصلاح مقابل التحقق أو التنسيق
استخدم مُصلح JSON حين يفشل تحليل بياناتك وتريد أن يُحاول المحرك الإصلاح التلقائي. استخدم مُحقق JSON حين يتم تحليل بياناتك بنجاح لكنك تريد التأكد من مطابقتها لمخطط بعينه. استخدم مُنسّق JSON حين تكون بياناتك صحيحة لكنها معروضة كسطر واحد مضغوط يصعب قراءته.
للبنى العميقة التداخل حيث لا يتضح مصدر الخطأ، فكّر في تمرير المخرجات المُصلحة عبر مُنسّق JSON لفحص البنية مستوىً بمستوى. يغطي الجمع بين الإصلاح والتنسيق والفحص الغالبية العظمى من سير عمل تتبع أخطاء JSON.
ضع في اعتبارك أن الإصلاح استدلالي: حين تكون عدة تفسيرات مقبولة بالقدر ذاته، يختار المحرك الاتفاقية الأكثر شيوعاً. راجع دائماً الفرق بين المدخلات والمخرجات قبل استخدام JSON المُصلح في خط إنتاج.