Utilia

منسّق JSON ومدقّقه

أداة مجانية لتنسيق JSON والتحقق من صحته: جمّل JSON واضغطه وافحصه في متصفحك، مع تحديد أخطاء الصياغة بالسطر والعمود.

كيفية استخدام منسّق JSON

  1. الصق بيانات JSON في مربع الإدخال.
  2. اختر نوع المسافة البادئة: مسافتان أو 4 مسافات أو علامة جدولة (Tab). فعّل خيار ترتيب المفاتيح إذا أردت ترتيب مفاتيح الكائنات أبجديًا.
  3. انقر تنسيق (تجميل) لعرض JSON بشكل مقروء ومنظّم، أو ضغط لجمعه في سطر واحد مضغوط.
  4. إذا كان JSON غير صالح، فاقرأ رسالة الخطأ التي تحدد رقم السطر والعمود حيث تقع المشكلة، ثم صحّحها وأعد المحاولة.
  5. انسخ النتيجة واستخدمها في شيفرتك البرمجية أو توثيقك أو أداة اختبار واجهات API.

ماذا تفعل هذه الأداة؟

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

  • تنسيق (تجميل): يضيف فواصل أسطر ومسافات بادئة متسقة، فيسهل تتبّع تداخل الكائنات والمصفوفات. يمكنك الإزاحة بمسافتين أو 4 مسافات أو بعلامة الجدولة بما يوافق أسلوب مشروعك.
  • ضغط: يحذف كل المسافات غير الضرورية لإنتاج أصغر JSON صالح ممكن، وهو مفيد لحمولات الطلبات وتضمين البيانات في الشيفرة وتقليل حجم الملفات.
  • تحقّق: يفحص ما إذا كان الإدخال JSON سليم الصياغة. وإذا لم يكن كذلك، تعرض الأداة خطأ الصياغة مع رقم السطر والعمود لتجده بسرعة.
  • ترتيب المفاتيح: يعيد ترتيب مفاتيح كل كائن أبجديًا، فيسهل تصفّح الكائنات الكبيرة ومقارنة مستندَي JSON جنبًا إلى جنب.

تعرض الأداة البيانات دائمًا من اليسار إلى اليمين كما تُكتب في الشيفرة، حتى في الصفحة العربية، لتبقى الأقواس والمفاتيح في مواضعها الصحيحة.

أخطاء JSON الشائعة

عندما يفشل التحقق، يكون السبب عادةً واحدًا مما يلي:

  • فاصلة زائدة في النهاية: الصيغة {"a": 1,} ليست JSON صالحًا، مع أن كثيرًا من لغات البرمجة تقبلها.
  • علامات الاقتباس المفردة: يجب أن تستخدم السلاسل النصية والمفاتيح علامات اقتباس مزدوجة، فالصيغة {'name': 'Ana'} غير صالحة.
  • مفاتيح دون علامات اقتباس: الصيغة {name: "Ana"} صالحة في JavaScript لكنها ليست JSON صالحًا.
  • التعليقات: لا يسمح JSON القياسي بتعليقات // أو /* */.
  • فواصل أو أقواس ناقصة: فاصلة منسية بين عنصرين، أو قوس } أو ] لم يُغلق.
  • قيم خاصة: القيم undefined وNaN وInfinity ليست جزءًا من JSON.

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

آمنة للبيانات الحساسة

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

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

هل تُرسل بيانات JSON الخاصة بي إلى خادم؟

لا. تعمل الأداة بالكامل في متصفحك، فلا تغادر بياناتك جهازك أبدًا. يمكنك استخدامها مع استجابات API وملفات الإعدادات وغيرها من البيانات السرية.

ما الفرق بين التنسيق والضغط؟

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

هل أستخدم مسافتين أم 4 مسافات أم علامة جدولة؟

المسألة أسلوبية بحتة، والبيانات متطابقة في كل الحالات. المسافتان شائعتان في مشاريع JavaScript وتوثيق واجهات API، والمسافات الأربع شائعة في مشاريع Python، أما علامة الجدولة فتتيح لكل قارئ اختيار عرض الإزاحة الذي يناسبه. اختر ما يوافق مشروعك.

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

لا. ترتيب المفاتيح داخل كائن JSON لا يحمل أي معنى، لذا فإن ترتيبها لا يغيّر البيانات. ولا يتغير أبدًا ترتيب العناصر داخل المصفوفات.

لماذا يشير الخطأ إلى سطر غير صحيح؟

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

هل تستطيع الأداة إصلاح JSON غير الصالح تلقائيًا؟

لا. تتحقق الأداة من JSON وتخبرك بدقة بمكان خطأ الصياغة، لكنها لا تخمّن التصحيحات. أصلح الخطأ المذكور ثم نسّق البيانات من جديد.