محول مجاني

JSON to YAML Converter

Convert JSON structure to clean YAML format. Ideal for Kubernetes manifests and cloud configs.

أو

حول هذه الأداة

إن الانتقال من JSON إلى YAML يتعلق في الغالب بجعل البيانات أكثر قابلية للقراءة بالنسبة للبشر. يصف كلا التنسيقين نفس أنواع الهياكل - الكائنات/الخرائط، والمصفوفات/التسلسلات، والكميات القياسية - ولكن بناء جملة YAML القائم على المسافة البادئة، والاقتباس الاختياري، ودعم التعليقات يجعل من السهل المسح والتحرير يدويًا. ملفات التكوين هي حالة الاستخدام الأساسية: اختارت بيانات Kubernetes، وسير عمل CI، وكتب اللعب Ansible، وعشرات الأدوات الأخرى YAML على وجه التحديد لأن محرريها الأساسيين هم من البشر.

يستخدم هذا المحول js-yaml لإجراء تسلسل لكائن JSON الذي تم تحليله في YAML. تحافظ النتيجة على بنية البيانات تمامًا أثناء تطبيق اصطلاحات YAML: المسافة البادئة للتداخل، وقوائم المصفوفات، وأزواج القيمة الرئيسية لخصائص الكائن. تم تخفيف الاقتباس المزدوج الصارم لـ JSON؛ يتم فقط اقتباس السلاسل التي تحتوي على أحرف خاصة أو التي تبدو وكأنها أنواع أخرى في الإخراج.

التحويل هو الحفاظ على المعلومات باستثناء الحالات التي يضيف فيها YAML تعبيرًا لم يكن لدى JSON. لا يمكن إعادة بناء التعليقات (لم يكن لدى JSON أي تعليقات). من المحتمل أن تقوم مراجع الارتساء والاسم المستعار بضغط الهياكل المتكررة ولكن لا يتم إنشاؤها تلقائيًا؛ يقوم الإخراج بتوسيع جميع المراجع المضمنة.

لماذا تحويل JSON إلى YAML

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

أدوات البنية التحتية الحديثة تفضل بأغلبية ساحقة YAML. Kubernetes، ومخططات Helm، وAnsible، وGitHub Actions، وGitLab CI، وDocker Compose، والعديد من الأدوات الأخرى تفضل أو تتطلب YAML. يعد تحويل صادرات JSON من نظام إلى تكوين YAML لنظام آخر خطوة تكامل روتينية.

كيفية الاستخدام

الصق JSON واحصل على YAML.

  1. أضف ملف JSON الخاص بك: الصق نص JSON أو أسقط ملفًا. يجب أن يكون الإدخال صالحًا بتنسيق JSON؛ لا يحاول المحول تحليل المدخلات المشابهة لـ JSON والتي تنتهك المواصفات.
  2. اختر الخيارات: حجم المسافة البادئة الافتراضي هو مسافتين، وهو اصطلاح YAML الأكثر شيوعًا. يعمل نمط التدفق (يشبه JSON المدمج) مقابل نمط الكتلة (المعتمد على المسافة البادئة) على تبديل مظهر الإخراج - الكتلة هي الوضع الافتراضي المناسب للإنسان.
  3. تحويل: تقوم وظيفة تفريغ js-yaml بتسلسل شجرة JSON التي تم تحليلها إلى YAML. يتم تطبيق اقتباس السلسلة فقط عند الضرورة؛ تظل السلاسل المعقدة قابلة للقراءة.
  4. تنزيل أو نسخ: احفظه بصيغة .yml أو انسخه إلى الحافظة. الإخراج صالح YAML 1.2 وجاهز لأي مستهلك YAML.

حالات الاستخدام الشائعة

التفاصيل الفنية

تعمل وظيفة التفريغ الخاصة بـ js-yaml على توجيه شجرة كائنات JavaScript وتصدر YAML باستخدام تنسيق قابل للتكوين. عمق المسافة البادئة، وعرض الخط، وعتبة نمط التدفق، ومعالجة عروض الأسعار كلها معلمات. تنتج الإعدادات الافتراضية YAML على شكل كتلة مع مسافة بادئة بمسافتين، وهو التقليد الأكثر شيوعًا.

يتبع اقتباس السلسلة قواعد YAML: يتم اقتباس السلاسل التي تبدو وكأنها أنواع أخرى (أرقام، منطقية، فارغة، تواريخ) لفرض تفسير السلسلة؛ السلاسل التي تحتوي على أحرف خاصة (النقطتان، التجزئة، الشرطات البادئة) يتم اقتباسها؛ يتم ترك سلاسل أبجدية بسيطة بدون علامات اقتباس.

الإخراج متوافق مع YAML 1.2 ويتم توزيعه بشكل واضح باستخدام js-yaml وPyYAML ومكتبات YAML الرئيسية الأخرى. تحافظ الرحلات ذهابًا وإيابًا (JSON → YAML → JSON) على البيانات، على الرغم من أن تمثيل YAML يختار التنسيق الأساسي الذي قد يختلف عن التنسيق المكتوب بخط اليد.

أفضل الممارسات

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

هل يؤدي تحويل JSON إلى YAML إلى تغيير المحتوى؟
يتم الحفاظ على المحتوى بأكبر قدر ممكن من الدقة. ومع ذلك، قد لا تحتوي بعض الميزات الخاصة بالتنسيق على مكافئات مباشرة، لذلك يمكن أن تحدث اختلافات بسيطة في التنسيق.
لماذا نستخدم تنسيق YAML؟
تحظى YAML بشعبية كبيرة في ملفات التكوين لأنها سهلة القراءة مع الحد الأدنى من بناء الجملة. إنه المعيار لـ Docker Compose وKubernetes وGitHub Actions والعديد من أدوات CI/CD.
هل يتعامل المحول مع بنيات JSON المتداخلة أو المعقدة؟
نعم. تقوم الأداة بتحليل الكائنات المتداخلة والمصفوفات وجميع أنواع بيانات JSON القياسية بشكل صحيح، مع الحفاظ على بنية البيانات الكاملة في مخرجات YAML.
هل هذا التحويل آمن وخاص؟
نعم. تتم جميع عمليات المعالجة محليًا في متصفحك. لا تترك بياناتك جهازك أبدًا - لا يوجد تحميل على الخادم، ولا معالجة سحابية، ولا جمع بيانات.
ماذا عن السلاسل ذات الأحرف الخاصة؟
يقتبسها js-yaml تلقائيًا. يتم تغليف السلاسل التي تحتوي على نقطتين أو تجزئات أو شرطات بادئة بين علامتي اقتباس للحفاظ على YAML بشكل جيد.
هل يتم تحميل بياناتي على الخادم؟
لا، يتم تشغيل التحويل في متصفحك باستخدام js-yaml.
هل يمكنني الذهاب ذهابًا وإيابًا إلى JSON إلى YAML والعودة؟
نعم. JSON → YAML → JSON يحافظ على البيانات هيكليا. يتطابق ترتيب مفاتيح JSON المحول مع الإدخال.
ما هو الحد الأقصى لحجم الإدخال؟
ما يصل إلى 50 ميغابايت. يعالج js-yaml ملفات التكوين النموذجية على الفور.