דלג לתוכן הראשי

ממיר YAML ל-JSON בחינם

המר YAML ל-JSON ו-JSON ל-YAML בשני הכיוונים. הדבק בכל פורמט וקבל את הפלט המומר באופן מיידי — ללא העלאה לשרת.

פועל לא-מקוון לאחר טעינה
פלט JSON
הפלט יופיע כאן…

שימושים נפוצים

  • המר YAML ל-JSON עבור הצהרות Kubernetesהמר YAML ל-Kubernetes ל-JSON (או בחזרה) עבור כלים, סקריפטי אימות או הגשה ישירה דרך API.
  • המרת Docker Compose YAML / JSONהמר docker-compose.yml ל-JSON לבדיקה או חזרה ל-YAML לאחר שינויים תכנותיים.
  • המרת תצורת צינור CI/CDהמר GitHub Actions, GitLab CI, CircleCI וצינור תצורות אחרות בין תבניות YAML ו-JSON.
  • המרת קובץ תצורה יישוםהמר קבצי תצורה יישום בין YAML ו-JSON — שימושי בעת החלפת מסגרות או שיתוף תצורות בכלים.
  • המרת OpenAPI / Swagger Specהמר OpenAPI 3.x או Swagger 2.0 API עם בין תבניות YAML ו-JSON. שני התבניות תקפים וניתן להחלפה.

כיצד זה עובד

שני כיווני ההמרה — YAML ל-JSON ו-JSON ל-YAML — פועלים כולם בדפדפן שלך באמצעות מפענח ופולט כתובי-יד הבנויים בדף, ללא ספריית YAML של צד שלישי וללא שרת מעורב. הלוגיקה חיה במודול TypeScript בודד (lib/yamljson.ts) שמטפל במיפויים, רצפים, סקלרים, מחרוזות מצוטטות, והסרת הערה inline.

  1. 1
    הקלט מעובד-מראש שורה אחר שורה
    עבור קלט YAML, המפענח מפצל את הטקסט לשורות, מסיר הערות inline (עוקב אחרי מצב-מרכאות כדי להימנע מהסרת # בתוך מחרוזות), מודד עומק הזחה, ומשמיט שורות ריקות — בונה רשימה מובנית של אסימונים לפני שכל פענוח מתחיל.
  2. 2
    מפענח ירידה-רקורסיבית בונה את עץ הנתונים
    המפענח עובר על רשימת האסימונים באמצעות רמת הזחה כדי לקבוע מבנה. הוא מזהה פריטי רצף (- value), מפתחות מיפוי (key: value), ובלוקים מקוננים. סקלרים עוברים שלב כפייה מוקלד שמטפל ב-null, בוליאנים, מספרים שלמים (דוחה ערכים אפס-מוביל כמו 007 כדי למנוע השחתת נתונים שקטה), ומספרים עשרוניים — עם מצב אופציונלי ששומר מילים חשופות YAML 1.1 כמו yes, no, on ו-off כמחרוזות במקום להמיר אותן לבוליאנים.
  3. 3
    תכונות YAML לא-נתמכות מסומנות, לא מושמטות בשקט
    לפני הפקת הפלט, הכלי סורק עבור עוגנים (&name), כינויים (*name), מפתחות-מיזוג (<<:), סקלרי-בלוק (| ו->), סמני מרובה-מסמכים (---), ומפתחות מיפוי כפולים. כל אחד מאלה מפעיל אזהרה גלויה במקום להפיק JSON שגוי בעדינות.
  4. 4
    JSON מסודרן או YAML מופק, ואז נהיה זמין
    עבור YAML→JSON, הערך המפוענח מועבר ל-JSON.stringify עם ההזחה שבחרת (2 רווחים, 4 רווחים, טאב, או מוקטן). עבור JSON→YAML, פולט מותאם אישית חוצה את ערך ה-JavaScript המפוענח ומפיק YAML מוזח, מצטט סקלרי-מחרוזת רק בעת הצורך (למשל, ערכים שמכילים :, #, או נראים כמילים שמורות). הפלט מופיע מיד תוך כדי הקלדה וניתן להעתקה או הורדה.

כלים קשורים

שאלות נפוצות