JSON Formatı
Bir JSON verisi bloğu – kısaltılmış, kaçırılmış veya doğrudan bir günlük satırından alınmış olan – yapıştırın ve seçtiğiniz içme boyutuyla düzenli bir şekilde görüntüleyin. Analiz sırasında doğrulama yapar ve her hata için kesin satır ve sütunu gösterir. İsteğe bağlı olarak nesne anahtarlarını alfabetik sırayla sıralayabilirsiniz; bu da iki API yanıt arasındaki farkların okunmasını çok daha kolay hale getirir.
JSON'u nasıl biçimlendirirsiniz?
-
1
JSON'u yapıştırın
Küçültülmüş, bir dizinin içinde yer alan veya bir JSONP geri çağrısına sarılmış haldeyse; analizleyici bunların hepsini çıkarır.
-
2
İçerik seçimi
2 boşluk, 4 boşluk, bir tab veya kompakt (küçük yükler için tek satır).
-
3
Sıralama tipini değiştirin
İki yanıtın karşılaştırılmasını kolaylaştırmak için nesne anahtarlarını alfabetik sıraya göre düzenleyin.
-
4
Kopyalayın veya indirin
Bir tıklamayla kopya yaparak klipboard'a kaydedin veya `.json` dosyası olarak kaydedin.
Formatlayıcının işlediği işler
- Küçültülmüş giriş:
{"a":1,"b":[1,2,3]}doğru şekilde iç içe indiklenir. - Sıralarda kaçırılmış JSON:
"{\"nested\":true}"içeren bir JSON dizisi, açılır ve biçimlendirilebilir. - JSONP geri çağrımları:
callback({...}), yalnızca{...}olarak indirgenmiştir. - BOM ve öncü boşluklar: otomatik olarak kaldırıldı.
- Yorumlar: JSONC tarzındaki
//ve/* */verileri “esnek” modda kabul edilir ancak çıktıdan çıkarılır (sıkı JSON formatında yorum bulunmaz).
Neden güzel biçimde basılan JSON?
- Diffing: Binlerce anahtar içeren tek satırlı bir JSON belgesi,
git diffformatında okunamaz. Her anahtar ayrı bir satır olarak sunulur. - Hata ayıklama: iç içe yerleştirilmiş yapılar, indentasyon sayesinde görsel olarak daha kolay navige edilebilir.
- Belgelleme: API örnekleri her zaman biçimlendirilmiş, sıralanmış ve yeniden yayımlanmalar boyunca tutarlı olmalıdır.
- _configs: JSON yapılandırma dosyaları okunabilirlik için deposunda açıkça yazılmalıdır; çalışma zamanında her iki format da analiz edilebilir.
Girinti kuralları
| Kontekst | Tipik girinti |
|---|---|
npm package.json |
2 boşluk |
| AWS CloudFormation | 2 boşluk |
| Eski Java / .NET | 4 boşluk |
| VCS’teki yapılandırmalar | 2 boşluk (proje genelinde tutarlılık en önemlidir) |
Anahtarları sıralamak tartışmalı bir konudur: farkları daha düzenli hâle getirir ancak standart yapılandırma dosyalarının disk üzerindeki sırasını değiştirir. Bir proje kuralları belirleyin ve bu kurallara sadık kalın.
Göreceğiniz doğrulama hataları
| Hata | Düzeltilir |
|---|---|
Unexpected token ' at position X |
Tek tırnak kullandınız; çift tırnağa değiştirin |
Unexpected end of JSON input |
Kapalı parantez veya kare parantez eksik |
Unexpected token , at position X |
Sonuca virgül eklenmiştir; kaldırın |
Unexpected token a at position X |
Çıkarıştırılmamış anahtar veya NaN/undefined kelime biçimi |
Duplicate key "foo" (esnek mod) |
JSON spesifikasyonu bunu destekler; çoğu parser son değerini korur |
Yaygın Hatalar
- HTML nesneleri içeren JSON’u kopyalamak:
"verisi analiz edilemez; önce kodun çözümü yapılmalıdır. - Sert ve esnek analiz yöntemlerini birleştirin: Esnek analizi yalnızca kontrol amaçlı kullanın; esnek JSON verileri asla üretim yapılandırması dosyalarına kaydetmeyin.
- Zaten güzel biçimde yazdırılmış bir dosyayı farklı bir stilde tekrar yazdırma. Formatör bu işlemi kolayca gerçekleştirecek, ancak belirgin bir fark belgesi (diff) oluşturursunuz.
Sık Sorulan Sorular
Ne yazık ki hem analiz hem de biçimlendirme işlemi tarayıcınızda gerçekleşir. İçerik asla sekmenizden çıkmaz; bu da tokenler, iç yapılandırma verileri veya test yükleri içeren API yanıtlarını yapıştırmak için güvenli bir ortam sağlar.
Formatör, geçerli bir JSON verisini estetik bir şekilde çap eder. Validatör ise bir JSON Şeması ile karşılaştırarak doğrulamayı gerçekleştirir. Her ikisi de analiz kontrolü yapar; ancak doğrulama yalnızca “bu geçerli bir JSON mu?” sorusunu değil, aynı zamanda “bu benim şemamla uyumlu mu?” sorusunu da içeren ayrı bir adımdır.
Evet. “Sort Keys” seçeneği, her içileme seviyesinde tüm nesne anahtarlarını rekursif olarak sıralar. Diziler orijinal sıralarını korur çünkü JSON’de dizinin sırası semantik açıdan anlamlıdır.
Tarayıcı belleğiyle sınırlıdır. Modern donanımlarda yaklaşık 50 MB’ye kadar çalışır. Bu miktarın üzerindeyse komut satırından jq’i kullanın; bu araç belgeyi yüklemek yerine akış olarak sunar.
İlgili Araçlar
Renk Paleti Jeneratörü
Temel bir renkten tamamlayıcı, analojik, triadik ve bölünmüş tamamlayıcı şemalar kullanılarak uyumlu bir 4–8 renk paleti oluşturun.
HEX Renk Seçici
Herhangi bir renk seçin ve bu renkinin HEX, RGB, HSL, HSV ile CMYK değerlerini yanı sıra beyaz ve siyah renklere karşı erişilebilirlik kontrastını da alın.
Rastgele Renk Oluşturucu
Rastgele bir RGB renk oluşturun, hex, HSL ve RGB değerlerini görün ve herhangi bir biçimi tek tıkla kopyalayın.
Rastgele Renk Paleti Oluşturucu
Rastgele bir temel ton üzerine kurulu beş renkli paletler oluşturun; tamamlayıcı, komşu ve üçlü varyantlarla.
Rastgele Harf Oluşturucu
İngiliz alfabesinden rastgele harfler oluşturun. Büyük/küçük harf seçin, yinelenenleri veya benzersiz çekimleri dahil edin ve kaç tane olacağını ayarlayın.
Yaş Hesaplayıcı
Doğum tarihinden tam yaşı yıl, ay ve gün olarak hesaplayın; toplam gün, saat ve bir sonraki doğum günü geri sayımı dahil.