Lompat ke konten
SPCXTools

Konverter YAML ke JSON

Konversi file konfigurasi antara YAML dan JSON dari kedua arah, dilengkapi pengecekan sintaks.

Berjalan secara lokal — file tidak pernah meninggalkan perangkat Anda

Memuat alat…

Cara menggunakan Konverter YAML ke JSON

  1. 1Pilih arah konversi — YAML → JSON atau JSON → YAML.
  2. 2Tempelkan YAML atau JSON Anda ke kotak kiri, atau klik Contoh.
  3. 3Hasil konversi akan muncul di kanan saat Anda mengetik. Kesalahan sintaks dilaporkan di bawah beserta deskripsinya.
  4. 4Salin hasilnya atau unduh sebagai file .json atau .yaml. Menukar arah konversi akan memindahkan hasil ke kotak input.

Konversi antara YAML dan JSON

YAML dan JSON adalah dua format paling umum untuk konfigurasi dan data terstruktur. Manifes Kubernetes, file Docker Compose, pipeline CI, dan spesifikasi OpenAPI biasanya ditulis dalam YAML, sementara API, kode JavaScript, dan banyak alat lainnya menggunakan JSON. Alat konversi ini mengubah format secara dua arah saat Anda mengetik, dan menunjukkan letak kesalahan jika input tidak valid.

Fitur

  • Dua arah: YAML → JSON dan JSON → YAML, bisa ditukar dengan satu klik.
  • Validasi sintaks dengan pesan error yang jelas untuk indentasi yang salah, tanda kutip yang belum ditutup, dan JSON yang tidak valid.
  • YAML multi-dokumen dikonversi menjadi array JSON.
  • Anchor, alias, dan merge key diselesaikan secara otomatis.
  • Indentasi 2 atau 4 spasi untuk output.
  • Salin atau unduh hasilnya sebagai .json atau .yaml.
  • Privasi terjaga: tidak ada data yang dikirim ke server.

Contoh

YAML berikut:

name: web-app
replicas: 3
ports:
  - 80
  - 443
env:
  NODE_ENV: production

dikonversi menjadi JSON berikut:

{
  "name": "web-app",
  "replicas": 3,
  "ports": [80, 443],
  "env": {
    "NODE_ENV": "production"
  }
}

Kesalahan umum pada YAML

  • Tab untuk indentasi. YAML hanya menggunakan spasi. Ganti tab dengan dua spasi.
  • Indentasi tidak konsisten. Item yang berkelompok harus memiliki jarak indentasi yang sama persis.
  • Tanpa spasi setelah titik dua. key:value akan dibaca sebagai satu string; tulis key: value.
  • Karakter khusus pada string. Nilai yang diawali dengan @, *, &, !, %, { atau [, atau mengandung : , harus diberi tanda kutip.
  • Tipe data yang tidak sesuai. Nomor versi seperti 1.10 akan dibaca sebagai angka 1.1, dan angka nol di depan bisa hilang. Gunakan tanda kutip untuk nilai yang harus tetap berupa teks.

Alat terkait

Rapikan atau minify JSON yang dihasilkan menggunakan JSON Formatter, ubah JSON menjadi spreadsheet dengan JSON to CSV, atau bandingkan dua file konfigurasi dengan Diff Checker.

Pertanyaan yang sering diajukan

Apa perbedaan antara YAML dan JSON?
Keduanya mendeskripsikan jenis data yang sama — objek, list, string, angka, boolean, dan null. JSON menggunakan kurung kurawal, kurung siku, dan tanda kutip, serta menjadi standar untuk API. YAML menggunakan indentasi alih-alih tanda kurung, mendukung komentar, dan populer untuk file konfigurasi seperti Docker Compose, Kubernetes, GitHub Actions, dan Ansible.
Apa yang terjadi pada komentar YAML?
JSON tidak mendukung komentar, sehingga komentar akan dihapus saat mengonversi YAML ke JSON. Saat dikonversi kembali, YAML tidak akan berisi komentar aslinya.
Bagaimana beberapa dokumen YAML ditangani?
Satu file YAML dapat berisi beberapa dokumen yang dipisahkan oleh ---. Jika demikian, konverter akan menghasilkan array JSON dengan satu elemen untuk setiap dokumen.
Apakah anchor dan alias didukung?
Ya. Anchor (&name), alias (*name), dan merge key (<<: *name) akan di-resolve, sehingga JSON berisi nilai lengkap yang telah diekspansi.
Mengapa tipe nilai saya berubah, seperti "no" menjadi false?
Alat ini mengikuti YAML 1.2, di mana hanya true dan false yang dianggap sebagai boolean. Parser YAML 1.1 versi lama juga menganggap yes, no, on, dan off sebagai boolean. Jika Anda ingin nilainya tetap berupa string, gunakan tanda kutip.
Apakah data saya diunggah?
Tidak. Parsing dan konversi dilakukan di dalam browser Anda, sehingga file konfigurasi yang berisi data rahasia atau hostname internal tidak akan pernah meninggalkan perangkat Anda.