ما هو محوّل YAML إلى JSON؟
يحوّل YAML to JSON Converter مستندات YAML إلى هياكل JSON مكافئة فوراً. يتعامل مع المراسي والأسماء المستعارة والنصوص متعددة الأسطر والخرائط المتداخلة والتسلسلات، فيمكنك تحويل إعدادات Kubernetes وخطوط CI/CD أو بيانات YAML أخرى إلى JSON للواجهات البرمجية والأكواد.
المحوّل مبني على js-yaml ويفهم خصائص YAML 1.2 التي تعجز عنها أدوات بسيطة كثيرة: المرتكزات والكنيات (&ref / *ref)، نصوص كتلية متعددة الأسطر (|، >)، علامات النوع الصريحة، وصور البوليان مثل yes/no/on/off. ووضع عكسي يُتيح العودة من JSON إلى YAML مع الحفاظ على البنية وضمّ مصفوفات القيم البسيطة في سطر واحد إن كان أوضح.
كيفية الاستخدام
- الخطوة 1 — الصق محتوى YAML أو ارفع ملف .yml/.yaml. تُبرَز أخطاء بناء الجملة بأرقام الأسطر لتصحيحها بسرعة.
- الخطوة 2 — اعرض مخرجات JSON المُحوّلة مع مسافات بادئة قابلة للتعديل: مسافتان أو 4 مسافات أو جدولة أو مضغوط.
- الخطوة 3 — انسخ JSON أو حمّله كملف .json. استخدم الوضع العكسي لتحويل JSON إلى YAML.
متى تستخدم
- تحويل بيان Kubernetes أو ملف Helm values إلى JSON ليتعامل معه سكربت تحقق محلي.
- تمرير إعدادات GitHub Actions أو GitLab CI لأداة لا تقبل إلا خطوط JSON.
- التنقل بين YAML و JSON لـ docker-compose.yml أثناء تتبّع أخطاء مخطط Compose.
النتيجة
تحتاج إلى تحويل docker-compose.yml إلى JSON لواجهة برمجية للنشر. الصق YAML بخدماته ووحدات تخزينه وتعريفات شبكاته، فتحصل على JSON صالح تقبله الواجهة البرمجية مع بقاء كل بنية متداخلة ومصفوفة سليمة.
الأسئلة الشائعة
- هل يتعامل مع المرتكزات والكنيات (& و *) في YAML؟
- نعم. js-yaml يحلّ المرتكزات أثناء التحليل، فيحتوي JSON الخارج على القيم الموسّعة لا صيغة المرجع. لو شارك مفتاحان مرتكزاً في YAML، فلكل منهما نسخته الكاملة من البيانات في JSON.
- لماذا تظهر قيمتي البوليانية في YAML (yes / no) كنص في بعض الأدوات؟
- YAML 1.1 كان يعتبر yes/no/on/off قيماً بوليانية، لكن YAML 1.2 لا يعرف إلا true/false. هذه الأداة تتبع 1.2، فتبقى yes/no نصوصاً إلا إن كتبتها true/false. لهذا يختفي عادةً «خلل النرويج» وأخواته هنا.
- هل أستطيع تحويل JSON إلى YAML؟
- نعم. شغّل المفتاح العكسي فيصبح الدخل JSON والخرج YAML. المُصدِّر يحفظ الكائنات والمصفوفات المتداخلة، والمفاتيح الطويلة ذات الأسطر الجديدة تخرج كنصوص كتلية (|) لتظل قابلة للقراءة.
- كيف تُعالج التواريخ والطوابع الزمنية؟
- حرفيات التاريخ والطابع الزمني في YAML تتحول إلى نصوص ISO 8601 في JSON (لأنّ JSON لا نوع تاريخ أصلي فيه). الذهاب والعودة عبر الوضع العكسي يحافظ عليها نصوصاً، لا يستعيد النوع الضمني لـ YAML، وهذا الأكثر أماناً.
- ما هدف خيار المسافة البادئة، وأيّها أختار؟
- مسافتان هما المعيار الفعلي لـ JavaScript ومعظم واجهات البرمجة. أربعة تطابق PEP 8 لبايثون لو ستضع الناتج في ملف .py. الصيغة المضغوطة (٠) تُخرِج سطراً واحداً مناسباً لجسم طلب HTTP أو لصقه في أمر curl. خيار Tab يضبط مسافة JSON بمحرف جدولة حقيقي، مفيد مع Go أو Makefile؛ وبما أن YAML لا يقبل محارف الجدولة، يتحوّل الوضع العكسي إلى مسافتين.
أدوات ذات صلة
باحث القوافي
ابحث عن قوافٍ مطابقة وقريبة لأي كلمة
محلل التبديلات الحرفية
اعثر على جميع الكلمات المشكّلة من حروف كلمة معيّنة
محرك بحث Unicode
ابحث عن رموز Unicode بالاسم أو الكود
مشفّر/فكّ تشفير URL
ترميز وفك ترميز الروابط فوراً
الأبجدية الصوتية للناتو
حوّل النص إلى الأبجدية الصوتية للناتو
عداد الفقرات
عدّ الفقرات في نصك