YAML ⇄ JSON 轉換
配置互轉 · 本地解析 · 即時預覽
YAML 轉換
就緒
ABOUT
關於 YAML ⇄ JSON 轉換
在 YAML 與 JSON 之間快速互轉,方便編輯 K8s manifest、CI 配置等場景。
Kubernetes、GitHub Actions、Docker Compose——YAML 是雲原生時代的 lingua franca。本地互轉讓你在沒有 kubectl / yq 環境的機器上也能快速審查 manifest 結構。
DEEP DIVE
深入瞭解 YAML ⇄ JSON 轉換
YAML 因其人類可讀性,被 Kubernetes、Docker Compose、GitHub Actions、Ansible 等廣泛採用。但 JavaScript 生態原生只支援 JSON,除錯 YAML 配置時常需先轉為 JSON。JSONSort 在瀏覽器本地完成雙向轉換,無需安裝 yq、Python PyYAML 等命令列工具。
轉換過程保留層級結構:YAML 的縮排對映為 JSON 巢狀,陣列與物件語義正確對應。適合快速驗證 K8s manifest 結構或把 CI 配置匯入 JSON 工具鏈進一步處理。
YAML 1.1 與 1.2 在布林值(yes/no)解析上存在歷史差異。轉換後若出現意外布林或 null,建議對照原始 YAML 縮排與引號用法;必要時在 JSON 側手動修正後再轉回 YAML。
FEATURES
核心能力
YAML → JSON
將 YAML 文字解析為 JSON 物件,支援多文件與錨點。
JSON → YAML
反向生成 YAML,方便寫入 .yaml 配置檔案。
即時轉換
貼上即轉換,無網路延遲,修改後可立即預覽。
語法提示
YAML 縮排或語法錯誤時給出解析失敗提示。
檔案匯入
支援拖拽 .yaml / .yml 檔案匯入。
本地安全
K8s 金鑰與內網配置不離開瀏覽器。
錨點與別名
支援 &anchor 與 *alias 的基本展開,便於處理 DRY 配置。
雙向編輯迴圈
YAML → JSON 編輯 → JSON → YAML,適合在不熟悉 YAML 縮排時先用 JSON 改。
HOW TO USE
使用步驟
-
1
貼上 YAML 或 JSON
-
2
選擇轉換方向
-
3
複製輸出或匯出檔案
-
4
轉換失敗時檢視錯誤提示,修正原始檔語法後重試
-
5
結果可用格式化工具美化,或匯出供下游指令碼使用
WORKFLOW
典型工作流
從匯入資料到匯出結果的完整流程,幫助團隊統一 YAML ⇄ JSON 轉換 的使用方式。
匯入 YAML
貼上或拖拽 .yaml / .yml,保留原始縮排。
檢查 JSON
用樹檢視確認 apiVersion、kind、spec 層級正確。
編輯(可選)
在 JSON 側修改後轉回 YAML,或複製 JSON 給下游工具。
匯出
複製結果到 Git 倉庫或配置管理系統。
USE CASES
適用場景
DevOps
將 K8s Deployment YAML 轉 JSON 後用樹檢視檢查結構。
後端開發
GitHub Actions workflow YAML 轉 JSON 便於程式化處理。
全棧工程師
docker-compose.yml 轉 JSON 匯入 Mock 或測試框架。
技術寫作
文件中 YAML 範例轉 JSON 供不同讀者群體參考。
雲原生工程師
Helm values.yaml 轉 JSON 接入內部配置管理平臺。
CI 維護者
GitHub Actions workflow 轉 JSON 做靜態檢查指令碼輸入。
TIPS
使用技巧
- K8s manifest 轉換後用格式化工具檢查,確認 apiVersion/kind 層級正確。
- YAML 對縮排敏感,貼上時保留原始空格,不要混用 Tab 與空格。
- 複雜 YAML 錨點(& *)轉換後可在 JSON 樹檢視驗證引用是否展開正確。
- JSON → YAML 輸出可直接儲存為 .yaml 用於 Ansible playbook。
- 與 TOML 工具配合:不同語言生態的配置格式可在 JSONSort 間統一互轉。
- 轉換失敗時,檢查是否有未閉合的引號或冒號後缺少空格。
- K8s Secret 的 stringData 轉 JSON 後注意 base64 欄位仍是字串。
- 多文件 YAML(--- 分隔)請分段轉換,避免結構混雜。
- JSON 轉 YAML 後檢查列表項縮排,某些工具對 - 開頭行敏感。
- 與 TOML 工具組合:統一轉為 JSON 作為中間格式再互轉。
LOCAL VS ONLINE
本地 vs 線上工具
JSONSort 堅持純前端架構,以下對比說明為何本地化工具更適合處理開發資料。
TROUBLESHOOTING
常見誤區與排查
實際使用中容易遇到的問題及建議處理方式,減少反覆試錯的時間。
解析失敗:bad indentation
建議:統一空格縮排,禁止 Tab;檢查冒號後是否有空格。
yes/no 變成 true/false
建議:YAML 1.1 特性,若需字串請加引號 "yes"。
轉回 YAML 順序變了
建議:鍵序可能與 JSON 一致;功能不受影響,Git diff 可能變大。
多行字串格式丟失
建議:| 與 > 塊標量在 JSON 中變為普通字串,轉回時需人工調整。
FAQ
常見問題
支援 Kubernetes YAML 嗎?
支援標準 YAML 語法。多文件用 --- 分隔的 manifest 建議逐段轉換。
JSON 轉 YAML 會保留鍵順序嗎?
會盡量保持 JSON 物件的鍵順序輸出到 YAML。
轉換後中文會亂碼嗎?
不會。UTF-8 編碼全程保持,中文註釋與字串正常保留。
轉換會保留 YAML 註釋嗎?
YAML → JSON 時註釋會丟失(JSON 不支援註釋)。建議註釋儲存在原始檔。
大 manifest 會卡嗎?
數千行通常無問題。超大檔案建議按 resource 拆分轉換。
資料會上傳到伺服器嗎?
不會。JSONSort 所有工具均在瀏覽器本地執行,您的輸入內容不會傳送到任何後端伺服器。
需要註冊或安裝嗎?
不需要。開啟頁面即可使用,無需賬號、無需下載客戶端,也支援 PWA 離線快取。
支援多大的檔案?
取決於瀏覽器記憶體,通常可流暢處理數 MB 級別的資料。超大檔案建議先拆分或使用合併清理工具。