Penukar Percuma

JSON kepada Penukar YAML

Tukar struktur JSON kepada format YAML yang bersih. Sesuai untuk manifes Kubernetes dan konfigurasi awan.

Ataupun

Tentang alat ini

Melangkah daripada JSON ke YAML kebanyakannya tentang menjadikan data lebih mudah dibaca untuk manusia. Kedua-dua format menerangkan jenis struktur yang sama — objek/peta, tatasusunan/jujukan, skalar — tetapi sintaks berasaskan lekukan YAML, petikan pilihan dan sokongan untuk ulasan menjadikannya lebih mudah untuk mengimbas dan mengedit dengan tangan. Fail konfigurasi ialah kes penggunaan kanonik: Manifes Kubernetes, aliran kerja CI, buku permainan Ansible dan berdozen alat lain memilih YAML secara khusus kerana editor utama mereka ialah manusia.

Penukar ini menggunakan js-yaml untuk menyerikan objek JSON yang dihuraikan ke dalam YAML. Hasilnya mengekalkan struktur data dengan tepat semasa menggunakan konvensyen YAML: lekukan untuk bersarang, senarai untuk tatasusunan, pasangan nilai kunci untuk sifat objek. Petikan berganda JSON yang ketat adalah santai; hanya rentetan yang mengandungi aksara khas atau yang kelihatan seperti jenis lain dipetik dalam output.

Penukaran adalah mengekalkan maklumat kecuali apabila YAML menambah ekspresif yang tidak dimiliki JSON. Komen tidak boleh dibina semula (JSON tiada). Rujukan anchor dan alias berpotensi memampatkan struktur berulang tetapi tidak dijana secara automatik; output mengembangkan semua rujukan sebaris.

Mengapa Tukar JSON kepada YAML

YAML secara dramatik lebih mudah dibaca daripada JSON untuk konfigurasi penyuntingan manusia. Indentasi menggantikan sarang pendakap, petikan adalah pilihan untuk rentetan ringkas dan ulasan boleh mendokumenkan tetapan yang tidak jelas. Untuk fail yang diselenggara oleh manusia — konfigurasi aplikasi, infrastruktur-sebagai-kod, membina saluran paip — YAML hampir selalu merupakan format destinasi yang betul.

Perkakas infrastruktur moden sangat menyukai YAML. Kubernetes, Carta Helm, Ansible, GitHub Actions, GitLab CI, Docker Compose dan banyak alatan lain sama ada lebih suka atau memerlukan YAML. Menukar eksport JSON daripada satu sistem kepada konfigurasi YAML untuk yang lain ialah langkah penyepaduan rutin.

Cara menggunakan

Tampal JSON, dapatkan YAML.

  1. Tambahkan JSON anda: Tampal teks JSON atau lepaskan fail. Input mestilah JSON yang sah; penukar tidak cuba menghuraikan input seperti JSON yang melanggar spesifikasi.
  2. Pilih pilihan: Saiz inden lalai kepada 2 ruang, konvensyen YAML yang paling biasa. Gaya aliran (seperti JSON padat) berbanding gaya blok (berasaskan lekukan) menogol penampilan output — blok ialah lalai mesra manusia.
  3. Tukar: Fungsi dump js-yaml mensirikan pokok JSON yang dihuraikan kepada YAML. Petikan rentetan digunakan hanya jika perlu; rentetan kompleks kekal boleh dibaca.
  4. Muat turun atau salin: Simpan sebagai .yml atau salin ke papan keratan. Output adalah sah YAML 1.2 sedia untuk mana-mana pengguna YAML.

Kes Penggunaan Biasa

Butiran Teknikal

Fungsi dump js-yaml berjalan pada pokok objek JavaScript dan memancarkan YAML menggunakan pemformatan boleh dikonfigurasikan. Kedalaman inden, lebar baris, ambang gaya aliran dan pengendalian petikan adalah semua parameter. Tetapan lalai menghasilkan YAML gaya blok dengan lekukan 2 ruang, konvensyen yang paling biasa.

Petikan rentetan mengikut peraturan YAML: rentetan yang kelihatan seperti jenis lain (nombor, boolean, nol, tarikh) dipetik untuk memaksa tafsiran rentetan; rentetan yang mengandungi aksara khas (titik bertitik, cincang, sempang utama) dipetik; rentetan abjad mudah dibiarkan tanpa disebut.

Output adalah serasi YAML 1.2 dan menghuraikan dengan bersih dengan js-yaml, PyYAML dan perpustakaan YAML utama yang lain. Perjalanan pergi balik idempoten (JSON → YAML → JSON) mengekalkan data, walaupun perwakilan YAML memilih pemformatan kanonik yang mungkin berbeza daripada yang setara dengan tulisan tangan.

Amalan Terbaik

Soalan lazim

Adakah menukar JSON kepada YAML mengubah kandungan?
Kandungannya dipelihara setepat mungkin. Walau bagaimanapun, sesetengah ciri khusus format mungkin tidak mempunyai persamaan langsung, jadi perbezaan pemformatan kecil boleh berlaku.
Mengapa menggunakan format YAML?
YAML popular untuk fail konfigurasi kerana ia sangat boleh dibaca dengan sintaks yang minimum. Ia adalah standard untuk Docker Compose, Kubernetes, GitHub Actions dan banyak alatan CI/CD.
Adakah penukar mengendalikan struktur JSON bersarang atau kompleks?
ya. Alat ini menghuraikan objek bersarang, tatasusunan dan semua jenis data JSON standard dengan betul, mengekalkan struktur data penuh dalam output YAML.
Adakah penukaran ini selamat dan peribadi?
ya. Semua pemprosesan berlaku secara setempat dalam penyemak imbas anda. Data anda tidak pernah meninggalkan peranti anda — tiada muat naik pelayan, tiada pemprosesan awan, tiada pengumpulan data.
Bagaimana dengan rentetan dengan aksara khas?
js-yaml memetiknya secara automatik. Rentetan yang mengandungi titik bertindih, cincang atau sengkang utama dibalut dengan petikan untuk memastikan YAML terbentuk dengan baik.
Adakah data saya dimuat naik ke pelayan?
Tidak. Penukaran berjalan dalam penyemak imbas anda menggunakan js-yaml.
Bolehkah saya pergi balik JSON ke YAML dan kembali?
ya. JSON → YAML → JSON mengekalkan data secara berstruktur. Urutan kunci JSON yang ditukar sepadan dengan input.
Apakah saiz input maksimum?
Sehingga 50 MB. js-yaml mengendalikan fail konfigurasi biasa serta-merta.