مدقق JSON
الصق JSON لفحصه وفق المعيار، مع رسالة الخطأ الدقيقة وموضعه حين يكون هناك خلل.
التحقق من صحة JSON أونلاين
تكفي فاصلة واحدة في غير مكانها لتجعل واجهة برمجية ترفض طلبًا أو ملف إعدادات يفشل في التحميل، ورسالة الخطأ الناتجة ليست مفيدة دائمًا. ولصق المستند في مدقق يخبرك خلال ثانية إن كان JSON صالحًا، وإن لم يكن، فأين ينكسر بالضبط.
تفتح هذه الصفحة منسّق JSON، الذي يتحقق من المستند عند كل تغيير عبر محلّل المتصفح المطابق للمعيار، وينسّقه حين يكون صالحًا.
الأخطاء التي يكتشفها المدقق أكثر من غيرها
| الخطأ | غير صالح | صالح |
|---|---|---|
| فاصلة زائدة في النهاية | {"a": 1,} | {"a": 1} |
| علامات اقتباس مفردة | {'a': 'x'} | {"a": "x"} |
| مفتاح بلا علامات اقتباس | {a: 1} | {"a": 1} |
| فاصلة ناقصة | {"a": 1 "b": 2} | {"a": 1, "b": 2} |
| تعليق | {"a": 1 // note} | احذف التعليق |
| سطر جديد غير مهرَّب داخل سلسلة نصية | فاصل أسطر داخل "…" | "line 1\nline 2" |
| قيم خاصة | NaN، undefined | null أو رقم |
قراءة رسالة الخطأ
تُبلغ المتصفحات عن أخطاء JSON مع موضعها، مثل "Expected double-quoted property name in JSON at position 12" (أي: كان متوقعًا اسم خاصية بين علامتي اقتباس مزدوجتين عند الموضع 12). ويُعدّ الموضع المحارف بدءًا من الصفر، فيشير إلى المحرف الذي توقف عنده المحلّل. أما الخطأ الحقيقي فيكون عادةً قبله مباشرة: الفاصلة التي تسبق القوس المعقوف الختامي، أو علامة الاقتباس التي كان ينبغي أن تكون مزدوجة.
الصالح ليس بالضرورة صحيحًا
يفحص المدقق الصياغة لا المعنى. فـJSON الذي يحتوي على مفتاح مكتوب خطأً، أو رقم مُرسل كسلسلة نصية، أو حقل إلزامي مفقود، يبقى JSON صالحًا. وللتحقق من البنية، استخدم مدقق JSON Schema في شفرتك أو في خط CI. وانتبه إلى المفاتيح المكررة: فهي مسموحة تقنيًا، لكن معظم المحلّلات تحتفظ بصمت بآخرها فقط.
التحقق برمجيًا
- JavaScript:
JSON.parse(text)داخلtry/catch - Python:
json.loads(text)، أوpython -m json.tool file.jsonمن سطر الأوامر - jq: الأمر
jq empty file.jsonلا يطبع شيئًا حين يكون الملف صالحًا - PHP:
json_validate($text)منذ PHP 8.3
وحين يصبح صالحًا، يزيل ضغط JSON المسافات الزائدة تمهيدًا للنقل.