ToolMill.io

YAML から JSON へ

YAML をブラウザに直接クリーンな JSON に変換し、コンフィグスタイルのデータを厳格な JSON ベースのワークフローに移動する必要がある場合。 このページは、クイックペイロードの準備、コンフィグ検査、およびヒト編集YAMLをAPI、スクリプト、およびバリデータが一般的に期待するフォーマットに変換するのに便利です。

データデータ

お問い合わせ

事例紹介

シンプルなキー値 YAML
パスワード
name: ToolMill
active: true
count: 3
ソリューション
{
  "name": "ToolMill",
  "active": true,
  "count": 3
}
ネストYAMLオブジェクト
パスワード
service:
  name: api
  ports:
    - 443
    - 8443
ソリューション
{
  "service": {
    "name": "api",
    "ports": [443, 8443]
  }
}
YAML リストから JSON 配列へ
パスワード
users:
  - name: Ava
    role: editor
  - name: Leo
    role: viewer
ソリューション
{
  "users": [
    {
      "name": "Ava",
      "role": "editor"
    },
    {
      "name": "Leo",
      "role": "viewer"
    }
  ]
}

YAMLがJSONにマップする方法

YAML マッピングは JSON オブジェクトになり、YAML シーケンスは JSON 配列になり、スカラー値は JSON 文字列、数値、ブール値、または解釈方法に応じて null になります。 これにより、コンフィグスタイルのテキストを厳格な機械指向のフォーマットに変えるのに役立ちます。

変換前の入力ルール

YAMLは、インデントとリスト構造に大きく依存します。 一貫性のある間隔、コロンの正しい使用、および正しくネストされたリスト項目は、明示的な支柱とブラケットでフォーマットで行う以上です。 貼り付けられたテキストがインデントや部分的な構造が壊れた場合、変換は失敗したり、予期しない出力を生成することができます。

変換時の変化

JSON 出力は、必要に応じて括弧、ブラケット、コンマ、引用された文字列を追加することにより、構造について明示的になります。 YAML のコメントは JSON の出力に引き継がれず、フォーマットスタイルは YAML のスニペットの元の外観を維持するのではなく JSON に正規化されます。

一般的な変換ミス

共通の間違いは、壊れたインデント、正しく整列されていない項目をリストし、コロンを欠落させ、部分的な貼り付けられたスニペット、コメントまたはすべての元のフォーマットの詳細が変換を生き残ると仮定します。 もう一つの頻繁な驚きはタイプ解釈です。真、虚偽、null、または3などの未引用の値は、文字列の代わりにJSON出力のブール、null、または数字になる可能性があります。

実用的なワークフロー

自動化または生産でJSONを変換する前に

デプロイや自動化ワークフローで JSON を再利用する前に、JSON フォームで表示する同じ構造、スカラーの解釈、および引用の動作が期待されていることを確認してください。 成功した変換は便利ですが、実際の消費者との互換性は別々にチェックする必要があります。

YAML 機能とエッジ ケース この変換 5 月 Simplify

一部の YAML 機能は、JSON への変換後に明らかなものになる方法で表現できます。 アンカー、エイリアス、コメント、フォーマットスタイル、および特定のスカラーの慣習は、変換されたJSONが、ヒト指向のYAMLコンテキストやプレゼンテーションの詳細を失う間にコアデータを保存することができる例です。

YAML変換後にJSON出力を解釈する方法

JSON 出力は YAML 入力から解析された構造の機械にやさしい表現です。 API を検証したり、渡したりするのは簡単ですが、元の YAML ファイルのドロップイン置換として処理する前に、配列、オブジェクト、スカラー値の形状を見直しても重要です。

設定スニペットを API またはスクリプトの JSON に変える必要がある場合は、このページを使用して、YAML リストの構成を別のツールに渡すか、または編集されたマニフェストを厳格なバリデータが読み取れる形式に変換します。 大規模なコンフィグの移行や高度な YAML 機能ではなく、過去のコンバージョンを素早く短縮するのに最適です。