JSON Biçimlendirici ve Doğrulayıcı
Geçerli olup olmadığını kontrol etmek için JSON'unuzu yapıştırın — hatalar satır ve sütun olarak işaret edilir — ardından okumak için biçimlendirin ya da göndermek için küçültün.
Başkasının JSON'unu delirmeden okumak
Günlük işte karşılaştığınız JSON'ların çoğu insan gözü için hiç düşünülmemiştir: bir API yanıtı tek, devasa bir satır olarak gelir, bir yapılandırma dosyası bir derleme adımında küçültülmüştür, bir log kaydının içine bir yük sıkıştırılmıştır. İşe yarayan alışkanlık basittir — önce yapıştırın, sonra okuyun. Biçimlendirildiğinde girinti, tek bir değeri okumadan önce verinin şeklini gösterir: iç içe geçme ne kadar derin, hangi kısımlar tekrarlanan şeylerin dizileri, hangileri tek seferlik ayarlar. Bu yapısal bakış çoğu zaman sorunuzu kendiliğinden yanıtlar, çünkü aradığınız alanın sandığınızdan farklı bir nesnenin içinde oturduğu ortaya çıkar. Biçimlendirdiğinizde veride hiçbir şey değişmez — yalnızca boşluklar değişir — bu yüzden biçimlendirilmiş kopyayı, ihtiyaç duyan yere doğrudan geri yapıştırmak güvenlidir.
JSON geçerli olduğu hâlde hâlâ yanlış göründüğünde
Başarılı bir ayrıştırmadan sonra bile iki şey insanları düzenli olarak şaşırtır. Birincisi JSON içinde JSON'dur: değeri kendisi de escape edilmiş bir JSON parçası olan, ters eğik çizgi ve tırnak çiftleriyle dolu bir dize alanı. Bu bir bozulma değildir — bir sistem, bir belgeyi başka bir belgenin içine metin olarak kaydetmiştir. İç içteki dizeyi kopyalayıp ayrı olarak biçimlendirin ki okuyabilesiniz. İkincisi büyük sayılardır. JSON'un kendisi her boyutta tam sayıya izin verir, ancak JavaScript sayıları 64 bitlik ondalıklı sayılar olarak saklar; bu yüzden yaklaşık on beş veya on altı basamaktan uzun bir kimlik, ayrıştırılırken son basamaklarını sessizce değiştirebilir. Bir yükü biçimlendirdiğinizde uzun sayısal bir kimliğin hafifçe farklı çıkması bu yüzdendir — ve iyi tasarlanmış API'lerin uzun kimlikleri dize olarak göndermesinin nedeni de budur.
Küçültme aslında ne işe yarar
Küçültülmüş JSON, makineler ve dar alanlar içindir: bir curl komutuna yapıştırılan bir yük, bir ortam değişkenine veya tek bir veritabanı sütununa sıkıştırılmış bir değer, ağ üzerinde olabildiğince küçük olmasını istediğiniz bir yanıt. Biçimlendirme ve küçültme birbirinin tam aynası gibidir — aynı veriyi gün boyu ikisi arasında gidip getirebilirsiniz, değişen tek şey boşluklardır. İkisini de kullanan düzenli bir iş akışı: okumak ve düzenlemek için biçimlendirin, göndermek için küçültün. Verileriniz baştan JSON değil de bir hesap tablosu olarak doğduysa, CSV'den JSON'a dönüştürücü satırları bir nesne dizisine çevirir — sonucunu buraya yapıştırmak, kodunuz onu görmeden önce ayrıştığını doğrulamanın hızlı bir yoludur.
JSON ayrıştırılamadığında olağan şüpheliler
JSON, JavaScript'ten daha katıdır: anahtarlar çift tırnak içinde olmalıdır, son öğeden sonra virgül olmaz, yorum satırı olmaz ve tek tırnak kullanılmaz. Buradaki doğrulayıcı siz yazarken çalışır ve karşılaştığı ilk sorunun satırını ve sütununu söyler.
Biçimlendir ile Küçült arasındaki fark nedir?
İkisi de birebir aynı veriyi üretir. Biçimlendir, insanların okuyabilmesi için girinti ve satır sonları ekler; Küçült ise aktarım veya depolama için mümkün olduğunca küçük olsun diye gereksiz her karakteri atar.
JSON'um herhangi bir yere gönderiliyor mu?
Hayır — bu araç tamamen tarayıcınızda, saf JavaScript ile çalışır. Hiçbir şey sunucuya yüklenmez; bu da rastgele bir web sitesine yapıştırmak istemeyeceğiniz veriler için bu aracı güvenli kılar.
