Command Palette

Search for a command to run...

كيفية تنسيق JSON عبر الإنترنت: دليل كامل مع أمثلة

كيفية تنسيق JSON عبر الإنترنت: دليل كامل مع أمثلة

T
Toolz Team
|Jun 13, 2026|14 دقيقة قراءة

جزء من مجموعة برمجة مطبوعة

بالعودة إلى أيام WP Adminify الخاصة بي، وصلت تذكرة دعم نصها ببساطة: &quot؛ تم استيراد الإعدادات معطلة. لا شيء يعمل.&quot؛ قام المستخدم بتحرير ملف الإعدادات المُصدَّر يدويًا - فاصلة زائدة واحدة على السطر 217 من نقطة JSON المكونة من 9000 سطر - واستجاب المستورد الخاص بي بالخطأ الأقل فائدة في العالم &#39؛: فشل الاستيراد.

لقد كتبت رسالة الخطأ تلك. هذا &#39؛ق علي.

استغرق الأمر منا 40 دقيقة ذهابًا وإيابًا للعثور على فاصلة واحدة كان من الممكن أن يضعها المنسق اللائق في نصف ثانية. لقد غيرت هذه التذكرة طريقة تفكيري في أدوات JSON، وبعد سنوات شكلت الطريقة التي بنيت بها تنسيق JSON على Toolz.dev: موقع الخطأ هو &#39؛ من الجيد الحصول عليه. It&#39؛s المنتج بأكمله.

يغطي هذا الدليل كيفية تنسيق JSON عبر الإنترنت، ولماذا يفشل التنسيق، وفخاخ بناء الجملة التي تأكل الجميع &#39؛ بعد ظهر اليوم في النهاية - بما في ذلك خطأي.

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


ماذا يفعل &quot؛ تنسيق JSON&quot؛ في الواقع تفعل؟

التنسيق - طباعة جميلة، إذا كنت &#39؛ تشعر بالخيال - يضيف مسافة بادئة وفواصل أسطر حتى تصبح البنية مرئية. البيانات لا تتغير &#39؛t بمقدار بت واحد. It&#39؛s تحويل العرض التقديمي، لا أكثر.

هذا:

{"employees":[{"firstName":"John","lastName":"Doe","department":"Engineering","skills":["JavaScript","Python","Docker"]},{"firstName":"Jane","lastName":"Smith","department":"Design","skills":["Figma","CSS","Illustration"]}],"company":"Acme Corp","founded":2015}

يصبح هذا:

{
  "employees": [
    {
      "firstName": "John",
      "lastName": "Doe",
      "department": "Engineering",
      "skills": ["JavaScript", "Python", "Docker"]
    },
    {
      "firstName": "Jane",
      "lastName": "Smith",
      "department": "Design",
      "skills": ["Figma", "CSS", "Illustration"]
    }
  ],
  "company": "Acme Corp",
  "founded": 2015
}

بيانات متطابقة. لكن واحدًا منهم فقط يتيح لك اكتشاف لمحة سريعة عن وجود جين في التصميم.

هناك &#39؛s مكافأة لا يحصل عليها معظم الأشخاص &#39؛ لا تفكر في: التنسيق هو أيضًا التحقق من الصحة المقنع. يجب على المنسق تحليل المستند الخاص بك لإعادة تنسيقه، لذلك إذا كان JSON معطلاً، فسيخبرك المنسق الجيد بذلك أين- وهو السبب الحقيقي لاستخدام واحد بدلا من التحديق.

Before and after showing minified JSON transformed into formatted JSON with syntax highlighting


كيف يمكنك تنسيق JSON عبر الإنترنت عمليًا؟

سير العمل بأكمله حوالي خمسة عشر ثانية

  1. انسخ JSON من أي مكان يعيش فيه - علامة تبويب شبكة DevTools (انقر بزر الماوس الأيمن فوق طلب → نسخ الاستجابة)، curl الإخراج، ملف سجل، زميل &#39؛s رسالة سلاك.
  2. افتح ال تنسيق JSON. لا يوجد تسجيل، لا تسجيل الدخول. يتم تحميله واللصق.
  3. قراءة الإخراج. يعود JSON الصالح بمسافة بادئة ومظللًا ببناء الجملة، مع أقسام قابلة للطي للمستندات الكبيرة. يحصل JSON غير صالح على خطأ برقم سطر ووصف باللغة الإنجليزية البسيطة.
  4. نسخ أو تنزيل. نقرة واحدة في كلتا الحالتين.

هذا &#39؛s ذلك. الجزء المثير للاهتمام هو &#39؛t المسار السعيد - it&#39؛s الخطوة 3 عندما تسوء الأمور. لذلك دع &#39؛s تسوء.

Annotated diagram of the toolz.dev JSON Formatter interface showing input, output, and feature controls


لماذا لا يتم تنسيق JSON الخاص بي؟

إذا رفض المنسق JSON الخاص بك، فإن المستند ينتهك القواعد النحوية في RFC 8259. من خلال تجربتي - سواء من تصحيح الأخطاء الخاص بي أو من بناء الأداة التي يقوم الأشخاص بلصق JSON المكسور فيها - it&#39؛s دائمًا تقريبًا واحد من خمسة أشياء.

1. الفواصل الزائدة

{
  "name": "Alice",
  "age": 30,
}
SyntaxError: Unexpected token } in JSON at position 34

جافا سكريبت تسمح بذلك. JSON لم يحدث ذلك أبدا. حذف الفاصلة بعد العنصر الأخير في كل كائن ومصفوفة

{
  "name": "Alice",
  "age": 30
}

هذه هي فاصلة تذكرة الدعم الخاصة بي. احترمها.

2. اقتباسات مفردة

{ 'name': 'Alice' }

بايثون الكلاسيكية تحكي. str(my_dict) تنتج JSON الزائفة المقتبسة بشكل فردي؛ json.dumps(my_dict) ينتج الشيء الحقيقي. إذا كنت أنت و#39؛ إذا رأيت اقتباسات فردية في شيء يدعي أنه JSON، فقد قام شخص ما بطباعة إملاء بدلاً من تسلسله - I&#39؛ لقد فعلت ذلك، أنت و#39؛ لقد فعلته، نحن و#39؛ سنفعل ذلك جميعًا مرة أخرى.

{ "name": "Alice" }

3. خطوط مائلة عكسية لم يتم الهروب منها

{ "path": "C:\new\test" }

تبدو غير ضارة. لكن \n هو خط جديد و \t هي علامة تبويب، لذلك يتم تحليلها إلى مسار به فواصل أسطر فعلية - أو تفشل تمامًا في تسلسلات مثل \x. مسارات Windows هي الضحية الأولى:

{ "path": "C:\\new\\test" }

4. أقواس غير متطابقة

{
  "users": [
    {"name": "Alice"},
    {"name": "Bob"}
}

مفقود ]. تافه هنا، وحشي في تكوين متداخل بعمق ستة مستويات. هذه فئة من الأخطاء التي يجدها البشر سيئة حقًا ويجدها المحللون على الفور - الاستعانة بمصادر خارجية.

5. قيم JavaScript التي تمثل &#39؛t JSON

{ "value": undefined, "count": NaN }

undefined، NaN، و Infinity هل جافا سكريبت وليست JSON. JSON.stringify يتحول بهدوء NaN إلى null ويسقط undefined الخصائص بالكامل - مما يعني أن الخطأ غالبًا ما يكون &#39؛t في JSON you&#39؛re ينظر إلى، &#39؛s المنبع في كل ما ينتجه. يستخدم null بشكل صريح والتحقق من التسلسل الخاص بك.

ال المنسق يمسك الخمسة جميعًا برقم السطر المرفق. هذه الجملة الأخيرة هي السبب الكامل لوجود فئة الأدوات هذه.


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

النقاش الأبدي، طبعة JSON. هنا &#39؛ المقارنة الصادقة:

2 مساحات 4 مساحات علامات التبويب
النظام البيئي جافا سكريبت/تايب سكريبت، npm، رد الفعل بايثون، جافا، .NET اذهب، بعض التعليمات البرمجية القديمة
التعشيش العميق يبقى على الشاشة يهرب من الحافة اليمنى يعتمد على عرض علامة التبويب
اختلاف سهولة القراءة جيد جيد جيد حتى يمتزج بالمساحات
JSON.stringify الوسيطة الافتراضية 2 (حسب الاتفاقية) 4 "\t"
حكمي الافتراضي لJSON حسنًا إذا كان فريقك &#39؛s بايثون أولاً Don&#39؛t، لـ JSON على وجه التحديد

موقعي، وأنا &#39؛ سأموت على هذا التل الصغير: مسافتان لـ JSON، بغض النظر عما يستخدمه الكود الآخر. يعشش JSON بشكل أعمق من كود المصدر النموذجي - استجابات API بعمق أربعة وخمسة مستويات طبيعية - والمسافة البادئة ذات 4 مسافات تحولها إلى تمارين تمرير أفقي. حتى في الفرق ذات الثقل في بايثون، قمت بتعيين JSON على مسافتين ولم يشتكي أحد مرتين على الإطلاق.

مهما اخترت، قم بتشفيرها حتى ينتهي النقاش

# .editorconfig
[*.json]
indent_style = space
indent_size = 2
insert_final_newline = true

ال المنسق يدعم كلا العرضين، لذا فإن مطابقة اتفاقية مشروعك و#39؛ هي عبارة عن إسقاط وليس مناقشة.


ماذا عن التنسيق من سطر الأوامر؟

في بعض الأحيان تكون المحطة أقرب من علامة تبويب المتصفح. استعمالي الفعلي:

# jq — the standard. Install it, learn 10% of it, profit.
curl -s https://api.example.com/users | jq .

# Python — already on basically every machine
curl -s https://api.example.com/users | python -m json.tool

# Node, if you enjoy typing
node -e "console.log(JSON.stringify(JSON.parse(require('fs').readFileSync(0,'utf8')),null,2))" < data.json

حيث يفوز كل منهم بصراحة:

  • jq لأي شيء مكتوب أو متكرر أو عبر الأنابيب - ولاستخراج الحقول (jq '.data.users[].email') بدلاً من قراءة المستندات بأكملها.
  • أداة المتصفح لمرة واحدة، لأي شيء تريده يستكشف مع الأقسام القابلة للطي، ولإظهار زميل في الفريق - يمكنك &#39؛t مشاركة تعبير jq على الشاشة لمدير المشروع.
  • رمز VS (Shift+Alt+F) لملفات JSON الموجودة في الريبو والمفتوحة على أي حال.

أستخدم الثلاثة يوميًا. أي شخص يخبرك أن أحدهم يحل محل الآخرين فهو يبيع شيئًا ما.

عادة واحدة تستحق السرقة: curl -s ... > response.json أولاً، ثم قم بتنسيق الملف. عندما يتبين أن الاستجابة عبارة عن صفحة خطأ HTML ترتدي Content-Type: application/json الزي - يحدث أكثر مما يرغب أي منا - أنت &#39؛ سأريد البايتات الأصلية، وليس متصفحك وتفسير #39؛ لها.


ثلاث تقنيات تنسيق يتخطاها معظم الأشخاص

فرز المفاتيح أبجديا. تقوم أجهزة التسلسل المختلفة بإصدار مفاتيح بترتيب مختلف، مما يؤدي إلى اختلاف &quot؛ نفس &quot؛ تبدو البيانات وكأنها إعادة كتابة. يؤدي فرز المفاتيح قبل الاختلاف إلى تحويل فرق مكون من 300 سطر إلى سطرين تغيرا بالفعل. هذا يقترن بشكل جميل مع أداة فرق النص عند مقارنة حمولات التدريج مقابل حمولات الإنتاج - وهي خدعة أنقذتني شخصيًا خلال حادثتين على الأقل.

إبقاء المصفوفات القصيرة مضمنة. "colors": ["red", "green", "blue"] في سطر واحد يقرأ أفضل من خمسة أسطر من الحفل. يقوم المنسقون الجيدون بذلك تلقائيًا لمصفوفات البدائيات؛ it&#39؛s الفرق بين JSON المنسق الذي يمكنك مسحه وتنسيق JSON that&#39؛s جميل من الناحية الفنية ولكن يبلغ طوله 4000 سطر.

قم بتنسيق الجزء، وليس الملف. للحصول على مستند بحجم 15 ميجابايت عندما تهتم بكائن واحد فقط: انسخ هذا الكائن المتداخل، وقم بتنسيقه بمفرده، وقد تم ذلك. يعد تنسيق الملف بأكمله حتى تتمكن من قراءة 40 سطرًا منه جهدًا ضائعًا - على الرغم من أنه إذا كنت بحاجة إلى الأمر برمته، فإن الأداة من جانب العميل تتعامل معه بدون شريط تقدم التحميل، لأنه لا يوجد &#39؛s تحميل.

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


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

كيف أقوم بتنسيق JSON عبر الإنترنت مجانًا؟

لصق JSON الخاص بك في Toolz.dev JSON المنسق- يتم تنسيقه على الفور مع تمييز بناء الجملة والتحقق من الأخطاء، مجانًا، بدون تسجيل. تتم المعالجة في متصفحك، لذلك لا يتم تحميل أي شيء تقوم بلصقه في أي مكان. هذا الجزء الأخير مهم أكثر من &quot؛ free&quot؛ الجزء إذا كانت الحمولة تحتوي على رموز مميزة أو بيانات المستخدم.

لماذا لا يتم تنسيق JSON الخاص بي بشكل صحيح؟

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

ماذا &#39؛s الفرق بين التنسيق والتحقق من صحة JSON؟

يعيد التنسيق كتابة المسافات البيضاء لسهولة القراءة؛ التحقق من صحة التحقق من صحة المستند مقابل قواعد RFC 8259. من الناحية العملية، هم &#39؛ هي نفس العملية - يجب على المنسق تحليل (التحقق من الصحة) قبل أن يتمكن من إعادة التنسيق. هذا &#39؛ لماذا &quot؛ لقد فاز &#39؛t format&quot؛ و&quot؛it&#39؛s غير صالح&quot؛ هي نفس التشخيص.

هل يجب أن أستخدم مسافتين أو 4 مسافات للمسافة البادئة لـ JSON؟

استخدم مسافتين ما لم يكن مشروعك موحدًا بالفعل على 4. يتداخل JSON بشكل أعمق من معظم التعليمات البرمجية المصدر، وتحافظ المسافة البادئة ذات المسافتين على استجابات واجهة برمجة التطبيقات في العالم الحقيقي قابلة للقراءة دون التمرير الأفقي. ثم قفل الاختيار في .editorconfig لذلك لا يظهر أبدًا في مراجعة التعليمات البرمجية مرة أخرى.

هل يمكنني تنسيق JSON في VS Code بدون امتداد؟

نعم - Shift+Alt+F (أو Shift+Option+F على نظام Mac) يقوم بتنسيق أي ملف JSON باستخدام المنسق المدمج و&quot؛ التنسيق على Save&quot؛ يجعله تلقائيا. لاحظ أن VS Code&#39؛s الخاصة settings.json هو JSONC، الذي يسمح بالتعليقات - don&#39؛ دع ذلك يقنعك بأن JSON العادي يفعل ذلك.

هل من الآمن لصق استجابات API في تنسيقات JSON عبر الإنترنت؟

فقط في المواقع من جانب العميل. الكثير من مواقع التنسيق انشر مدخلاتك على الخادم، مما يعني أن استجابة واجهة برمجة التطبيقات الخاصة بك - الرموز المميزة ورسائل البريد الإلكتروني وكل ذلك - موجودة الآن في سجلات شخص آخر &#39؛s. ال منسق Toolz.dev يعمل بالكامل في متصفحك؛ تحقق من ذلك بنفسك من خلال مشاهدة علامة تبويب الشبكة أثناء اللصق.

كيف أقوم بتنسيق ملف JSON ضخم (10 ميجابايت+)؟

تتعامل أدوات المتصفح من جانب العميل مع الملفات الموجودة في هذا النطاق بشكل جيد نظرًا لعدم وجود خطوة تحميل في &#39؛ - اللصق هو الجزء البطيء. بعد 50 ميجابايت أو نحو ذلك، قم بالتبديل إلى أدوات البث: jq في سطر الأوامر، أو قم باستخراج القسم الذي تحتاجه فقط وقم بتنسيقه. لا تقم أبدًا بلصق ملفات ضخمة في أدوات تعتمد على الخادم؛ أنت &#39؛ أنت في انتظار التحميل دون أي فائدة.

كيف يمكنني تصغير JSON بدلاً من تنسيقه؟

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

هل يؤدي تنسيق JSON إلى تغيير البيانات؟

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

ما هو تجميل JSON؟

It&#39؛s اسم آخر لمنسق JSON - أداة تأخذ JSON مصغرًا أو فوضويًا وتضيف مسافة بادئة وفواصل أسطر حتى يتمكن الإنسان من قراءتها. &quot؛تجميل، واقتباس؛ &اقتباس؛ طباعة جميلة، واقتباس؛ و &اقتباس؛ تنسيق واقتباس؛ كلها تصف نفس العملية. ال تنسيق JSON يفعل ذلك في عجينة واحدة.


العادة الخامسة عشرة الثانية

يعد تنسيق JSON مهارة صغيرة ذات عوائد كبيرة - معظمها &quot؛ واجهة برمجة التطبيقات معطلة وحاصل؛ اللحظات هي حقا &quot؛ الحمولة غير قابلة للقراءة والاقتباس؛ اللحظات، وتلك التي تذوب في اللحظة التي يصبح فيها الهيكل مرئيًا. احصل على حلقة اللصق والتنسيق والقراءة لمدة خمس عشرة ثانية وتختفي فئة كاملة من احتكاك تصحيح الأخطاء.

ال منسق JSON على Toolz.dev هو إصدار هذه الأداة الذي أردته خلال تذكرة الدعم تلك: فوري ودقيق بشأن الأخطاء وغير قادر على تسريب بياناتك لأنه لا يستلمها أبدًا.

بمجرد أن يصبح JSON نظيفًا، فإن الخطوة التالية عادةً ما تكون نقله إلى مكان ما - إلى جدول بيانات يحتوي على محول JSON إلى CSV، التراجع عن واحد مع محول CSV إلى JSON، أو في خط أنابيب التكوين عبر مدقق يمل. ابدأ بـ دليل JSON إلى CSV أو العودة إلى دليل أدوات JSON الكامل للخريطة الكاملة.


مقالات ذات صلة:

Frequently Asked Questions

Paste your JSON into the toolz.dev JSON Formatter — it formats instantly with syntax highlighting and error checking, free, no signup. Processing happens in your browser, so nothing you paste is uploaded anywhere. That last part matters more than the "free" part if the payload contains tokens or user data.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!