Pemformat dan Validator

Alat untuk merapikan, memvalidasi, dan membandingkan data terstruktur. Seluruh proses berjalan di peramban Anda, jadi data Anda tidak pernah diunggah.

Memilih alat pemformatan

Gunakan JSON formatter untuk merapikan, memperkecil, dan menelusuri sebuah payload; alat perbandingan JSON saat dua respons yang seharusnya identik ternyata berbeda; dan alat stringify saat sebuah dokumen harus disematkan ke dokumen lain sebagai string.

Gunakan validator YAML untuk file konfigurasi, tempat masalah yang menarik adalah indentasi dan tipe implisit, bukan sintaks, serta XML formatter untuk dokumen dan payload SOAP, tempat konten campuran membuat spasi kadang menjadi bagian dari data.

Parser sungguhan, bukan regular expression

Setiap alat di kategori ini mengurai dokumen dengan benar sebelum menampilkan apa pun, dan itulah yang memungkinkannya menunjuk baris dan kolom tempat input berhenti valid, alih-alih sekadar menyebut ada yang salah di suatu tempat. Itu juga sebabnya dokumen yang bisa diformat dengan bersih di sini akan terbaca oleh parser di bahasa pemrograman Anda sendiri.

Konsekuensinya adalah ketegasan. Parser ini mengikuti spesifikasi, bukan perilaku longgar yang ditambahkan sebagian pustaka, sehingga koma di akhir, tab yang dipakai untuk indentasi, atau ampersand yang tidak di-escape tetap dianggap error di sini, meskipun satu alat tertentu di lingkungan Anda menerimanya.

Pemformatan menulis ulang byte, bukan makna - dengan pengecualian

Merapikan dokumen berarti menguraikannya lalu menuliskannya kembali, dan beberapa hal dinormalisasi di sepanjang jalan itu. Di JSON, kunci ganda digabung dan bilangan bulat yang sangat besar kehilangan presisi. Di YAML, anchor diuraikan dan komentar hilang saat dikonversi. Di XML, urutan atribut dan komentar tetap ada, tetapi spasi di dalam konten campuran adalah data dan sengaja tidak diubah.

Semua itu tidak penting jika Anda hanya membaca payload di debugger. Tetapi sangat penting jika hasil pemformatan itulah yang akan Anda commit, jadi ketika sebuah dokumen menjadi acuan utama, formatlah salinannya dan bandingkan dengan aslinya sebelum menggantinya.

Format mana untuk keperluan apa

JSON adalah pilihan bawaan untuk pertukaran data: tanpa komentar, tanpa ambiguitas tipe, dan parsernya ada di mana-mana. YAML mendapat tempatnya di konfigurasi, tempat komentar dan penggunaan ulang penting serta file-nya disunting manusia secara manual. XML bertahan di tempat skema, namespace, dan tanda tangan menjadi bagian dari kontrak, yang mencakup sebagian besar integrasi korporat dan pemerintahan.

Konversi di antara ketiganya jarang tanpa biaya. JSON tidak mendapat apa-apa dari anchor YAML dan kehilangan komentarnya; atribut XML tidak punya padanan yang jelas di JSON, dan setiap konverter menciptakan konvensinya sendiri. Konversikan saat sistem di sisi lain memang memerlukannya, bukan demi merapikan file.