JSON kepada Penukar YAML
Tukar struktur JSON kepada format YAML yang bersih. Sesuai untuk manifes Kubernetes dan konfigurasi awan.
Tukar struktur JSON kepada format YAML yang bersih. Sesuai untuk manifes Kubernetes dan konfigurasi awan.
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.
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.
Tampal JSON, dapatkan YAML.
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.