Validator și înfrumusețator JSON
Validați și înfrumusețați conținutul JSON cu instrumentul nostru de validare și înfrumusețare JSON pentru date JSON curate și ușor de citit.

Validator și înfrumusețator JSON este un instrument gratuit care verifică dacă un conținut JSON este valid sintactic și formatează conținutul valid pentru ca structura lui să fie mai ușor de citit.
Ce fac validarea și înfrumusețarea JSON?
Validarea confirmă că datele introduse respectă gramatica JSON, iar înfrumusețarea afișează obiectele și tablourile valide cu spațiere și indentare consecvente. Funcția este utilă pentru depanarea răspunsurilor API, verificarea configurațiilor înainte de implementare sau citirea datelor compacte furnizate de terți.
Sintaxa JSON este mai strictă decât cea a unui literal de obiect JavaScript. Numele proprietăților trebuie scrise între ghilimele duble, șirurile nu pot folosi ghilimele simple, iar obiectele și tablourile nu pot avea virgule după ultimul element. Nici comentariile, undefined, NaN și Infinity nu fac parte din specificația JSON.
Instrumentul folosește pe server funcția PHP json_decode. Datele introduse sunt trimise la server prin HTTPS și nu sunt stocate. Totuși, ele părăsesc dispozitivul tău, așa că elimină parolele, tokenurile de acces și datele cu caracter personal dacă regulile organizației tale nu permit trimiterea lor către un server extern.
Cum validez și înfrumusețez un conținut JSON?
Lipește conținutul în câmpul JSON și rulează instrumentul. Pentru un rezultat util, introdu o valoare JSON completă, nu doar o parte dintr-un obiect copiată dintr-o linie de jurnal.
- Copiază răspunsul brut, blocul de configurare sau altă valoare JSON, fără etichetele adăugate de consolă în jurul său.
- Lipește conținutul în câmpul JSON, păstrând ghilimelele și caracterele escape.
- Rulează validarea și verifică rezultatul formatat sau eroarea raportată.
- Dacă validarea eșuează, corectează prima problemă de sintaxă observată și rulează din nou instrumentul. O singură ghilimea lipsă poate face ca mai multe caractere ulterioare să fie interpretate greșit.

Cele patru caractere de spațiere permise între tokenurile JSON, spațiul (U+0020), tabulatorul (U+0009), saltul la linie nouă (U+000A) și returul de car (U+000D), nu influențează datele, deci pot fi adăugate sau eliminate fără a le modifica. Spațierea din interiorul unui șir scris între ghilimele face parte din date și trebuie păstrată. Și semnele de punctuație din șiruri sunt păstrate, însă ghilimelele, barele oblice inverse și caracterele de control trebuie reprezentate prin secvențele escape corespunzătoare.
Cum interpretez rezultatul validării?
Un rezultat pozitiv înseamnă că PHP a putut decoda datele introduse ca JSON. Dacă validarea eșuează, parserul nu le-a putut interpreta ca pe o singură valoare JSON completă și validă. Înfrumusețarea evidențiază apoi nivelurile de imbricare și limitele obiectelor și tablourilor valide.
Printre cauzele frecvente ale erorilor se numără:
- o virgulă după ultimul element, înainte de } sau ];
- un nume de proprietate fără ghilimele, precum {name: "Ada"};
- șiruri scrise între ghilimele simple;
- lipsa unei virgule între proprietăți sau între elementele unui tablou;
- o ghilimea dublă sau o bară oblică inversă fără escape în interiorul unui șir;
- un obiect, un tablou sau un șir incomplet;
- date UTF-8 nevalide sau un caracter de control brut în interiorul unui șir;
- partea întreagă a unui număr cu zerouri inutile la început, precum 01 sau -01, ori valori care nu aparțin formatului JSON, precum NaN.
Un câmp gol nu reprezintă un conținut JSON valid. În schimb, o valoare izolată precum 42, true, null sau "hello" este JSON valid, chiar dacă nu este un obiect sau un tablou. Conținutul cu foarte multe niveluri de imbricare poate depăși și limita de adâncime a decodorului.
Validarea sintaxei nu confirmă că datele respectă un contract API. Un document poate fi JSON valid, dar să conțină un șir acolo unde aplicația așteaptă un număr, să nu includă o proprietate obligatorie sau să folosească un format de dată neacceptat. Pentru astfel de cerințe, folosește JSON Schema sau verificări la nivelul aplicației.

Exemple practice de JSON
Conținut compact valid:
{"name":"Ada","active":true,"roles":["admin","editor"]}
Rezultatul înfrumusețat afișează proprietățile și elementele tabloului pe niveluri separate și indentate. Valorile rămân un șir, o valoare booleană și, respectiv, un tablou. Formatarea schimbă doar modul de afișare, nu și tipurile de date.
Conținut nevalid, cu o virgulă după ultima proprietate:
{"name":"Ada","active":true,}
Validarea eșuează deoarece JSON nu permite o virgulă după ultima proprietate. Elimină virgula pentru ca obiectul să devină valid.
Caracterele accentuate și textele care folosesc alte alfabete pot apărea direct în șirurile JSON dacă datele introduse sunt UTF-8 valide. De exemplu, {"city":"Zürich","greeting":"こんにちは"} este valid. Notația escape JSON, precum \u00fc, este o altă reprezentare validă pentru anumite caractere Unicode, deși caracterele din afara Planului Multilingv de Bază necesită perechi surogat.
Când nu merită să înfrumusețezi un conținut JSON?
Înfrumusețarea nu este necesară atunci când datele JSON vor fi citite doar de o mașină și nu urmează să fie verificate de o persoană sau analizate într-un sistem de control al versiunilor. Indentarea și liniile noi măresc numărul de octeți transferați, motiv pentru care răspunsurile din mediile de producție sunt trimise de obicei în formă compactă.
Nici minificarea unui conținut JSON deja compact nu aduce beneficii semnificative. Minificarea repetată nu poate scurta numele fixe ale proprietăților sau valorile șirurilor, iar modificarea acestor valori ar schimba datele. Pentru cod JavaScript destinat implementării, nu pentru date JSON, operația mai potrivită este Minificator JS.
Înfrumusețarea este utilă mai ales când verifici structuri sau valori JSON în timpul depanării, al revizuirii codului și al controalelor dinaintea implementării. Scoate în evidență imbricările incorecte, face tablourile mari mai ușor de parcurs și produce diferențe mai clare când configurația este salvată în Git. Nu repară automat un conținut JSON incorect și nu poate stabili ce ar fi trebuit să însemne un fragment ambiguu.
Întrebări frecvente
Pot adăuga comentarii într-un fișier JSON?
Nu. Formatul JSON standard nu are o sintaxă pentru comentarii, așa că // comment și /* comment */ fac validarea să eșueze. Dacă ai nevoie de comentarii într-un fișier de configurare, folosește un format care le acceptă sau elimină-le înainte de a trimite conținutul către un parser JSON strict.
Sunt respinse proprietățile cu același nume?
Nu neapărat. Specificația JSON precizează că numele membrilor unui obiect ar trebui să fie unice, însă parserele nu tratează în mod consecvent numele duplicate drept eroare de sintaxă. Decodarea PHP păstrează de obicei ultima valoare, așa că identifică duplicatele înainte de validare dacă este important să păstrezi fiecare apariție.
Pot valida un fișier JSON Lines?
Nu ca pe un singur document JSON. JSON Lines, numit și NDJSON, conține câte o valoare JSON separată pe fiecare linie, în timp ce un parser JSON obișnuit așteaptă o singură valoare la nivelul superior. Validează fiecare linie separat sau transformă înregistrările într-un singur tablou JSON.
Contează ordinea proprietăților dintr-un obiect?
Aplicațiile nu ar trebui să se bazeze pe ordinea proprietăților unui obiect JSON. Tablourile sunt ordonate, dar obiectele reprezintă colecții de membri cu nume, iar un alt parser sau serializator îi poate reda într-o ordine diferită. Dacă ordinea are semnificație, pune valorile într-un tablou.
De ce nu trece validarea un fișier JSON care pare corect?
Un marcaj invizibil pentru ordinea octeților, date UTF-8 incorecte sau un caracter de control fără escape pot face ca un text aparent corect să nu treacă validarea. Copierea dintr-un terminal poate introduce și prefixe, cum ar fi etichete de stare sau marcaje temporale. Verifică octeții bruți sau deschide fișierul într-un editor care poate afișa codificarea și caracterele de control.
Verificări finale
Înainte de a implementa conținutul JSON corectat, compară atât tipurile de date, cât și valorile vizibile, verifică dacă secvențele escape au rămas neschimbate și rulează aplicația care va consuma datele sau validarea schemei acesteia. Când investighezi date provenite de la terți, păstrează o copie nemodificată a răspunsului original, pentru ca formatarea să nu ascundă sursa erorii.
Instrumente populare
Creați-vă propria semnătură personalizată și descărcați-o ușor cu instrumentul nostru de generare a semnăturilor pentru semnături electronice personalizate.
Calculează dimensiunea oricărui text în Byți (B), Kilobyți (KB) sau Megabyți (MB) folosind instrumentul nostru de calcul al dimensiunii textului.
Utilizați instrumentul de căutare inversă IP pentru a găsi rapid și ușor domeniul sau gazda asociată cu orice adresă IP.
Folosiți instrumentul nostru de ping pentru a verifica rapid și eficient starea și timpul de răspuns al oricărui site web, server sau port.
Instrumentul de căutare IP al Digily Link oferă informații detaliate despre orice adresă IP. Folosește acest serviciu online gratuit pentru a obține date IP cuprinzătoare.
Generează instantaneu linkul tău gratuit de WhatsApp cu Generatorul nostru de Linkuri WhatsApp. Adaugă un mesaj personalizat și începe conversațiile cu un singur clic. Fără autentificare sau codare necesară.