← Alle gereedskap

JSON-formatteerder, -valideerder en -verkleiner

Formatteer, valideer en verklein JSON aanlyn in jou blaaier. Verfraai deurmekaar API-antwoorde, vang sintaksfoute en krimp vragte, met niks opgelaai nie.

Formateer, valideer en verklein JSON reg in jou blaaier

JSON, kort vir JavaScript Object Notation, is die lingua franca van die moderne web. Byna elke REST API wat jy aanroep, gee dit terug, die meeste konfigurasielêers steun daarop, en 'n groot deel van die data wat tussen dienste en voorkante vloei, word as JSON geserialiseer. Dit is gewild om 'n goeie rede: die formaat is eenvoudig, taal-onafhanklik, en pas netjies op die objekte, skikkings, stringe en getalle waarin programmeerders reeds dink. Maar daardie selfde kompaktheid het 'n nadeel. Die oomblik wat 'n bediener jou 'n eenlyn-respons gee wat volgepak is met honderde geneste sleutels, verdwyn die struktuur wat JSON aantreklik gemaak het in 'n muur van karakters.

Die speedor.net JSON Formateerder bestaan om daardie struktuur terug te gee. Plak jou data, en dit druk JSON netjies uit, valideer en verklein dit op die plek, heeltemal binne jou blaaierblad. Niks word na 'n bediener opgelaai nie, wat baie saak maak wanneer die vrag wat jy ondersoek 'n API-respons is wat tokens, klantrekords of interne identifiseerders bevat.

Abstrakte gloeiende geneste hakies en ingekeepte JSON-struktuur op 'n donker indigo agtergrond
Inkeping verander 'n plat klomp data in 'n boom wat jy werklik kan lees.

Waarom inkeping JSON weer leesbaar maak

Formatering, ook genoem verfraaiing of "pretty-printing", neem kompakte of verkleinde JSON en voeg lynbreuke plus konsekwente inkeping by. Die inligting is identies; net die spasiëring verander. Tog is dit daardie spasiëring wat jou oog laat volg hoe diep die nesting gaan, jou laat sien waar een objek eindig en die volgende begin, en 'n skikking van drie items van een van driehonderd laat onderskei. Wanneer jy om twee-uur die oggend 'n integrasie ontfout, is die verskil tussen 'n leesbare boom en 'n ononderbroke string die verskil tussen om die fout te vind en om dit mis te kyk.

'n Goeie formateerder hou ook die volgorde van sleutels en die presiese waardes intak, sodat wat jy lees werklik is wat die API gestuur het. Jy kyk nie na 'n herweergegewe benadering nie; jy kyk na dieselfde grepe, net uitgelê sodat 'n mens dit net so maklik kan ontleed as wat 'n masjien kan.

Validering en die foute wat almal laat struikel

Verfraaiing is net die helfte van die werk. Voordat JSON hoegenaamd geformateer kan word, moet dit geldig wees, en die streng reëls van die formaat vang veel meer foute op as wat mense verwag. 'n Validator ontleed jou toevoer en vertel jou presies waar dit breek, gewoonlik met verwysing na 'n lyn en posisie sodat jy nie blindelings hoef te soek nie. Die handjievol foute hieronder maak die oorgrote meerderheid van gebroke JSON uit:

  • Agterlopende kommas. JSON verbied 'n komma na die laaste element van 'n objek of skikking. JavaScript verdra dit, wat presies waarom ontwikkelaars dit uit gewoonte inplak.
  • Enkelaanhalingstekens. Stringe en sleutels moet dubbele aanhalingstekens gebruik. Om 'n objek-literal direk uit brontkode te haal, laat dikwels enkelaanhalingstekens agter, en die ontleder verwerp dit.
  • Onaangehaalde sleutels. Elke sleutel moet 'n aangehaalde string wees. Kaal sleutels, die soort wat goed werk in 'n JavaScript-objek, is ongeldige JSON.
  • Ontbrekende of onbypassende hakies. 'n Ongeslote { of [, of 'n verdwaalde sluithakie, ontspoor die hele dokument. Die formateerder lig uit waar die balans breek.
  • Kommentaar en ongedefinieerde waardes. JSON het geen kommentaar en geen undefined nie; slegs null, boole-waardes, getalle, stringe, skikkings en objekte word toegelaat.

Stuur 'n verdagte vrag eers deur die validator en hierdie probleme kom binne sekondes na vore, eerder as ná 'n verwarrende reeks mislukte ontplooiings.

Verwarde deurmekaar data wat oplos in 'n geordende gloeiende struktuur met 'n valideringsgloed
Validering verander 'n knoop van misvormde data in 'n bevestigde, welgevormde dokument.

Verklein om vragte te verklein

Die teenoorgestelde bewerking is net so nuttig. Verkleining stroop elke greep opsionele spasiëring, en dwing jou JSON terug in die stroefste eenlyn-vorm. Dit is presies wat jy wil hê wanneer die data op pad is na die draad of in 'n konfigurasiewaarde, want kleiner vragte beteken minder bandwydte en vinniger oordragte. 'n Algemene werkvloei is om 'n respons te verfraai terwyl jy dit bestudeer, reg te maak wat verkeerd is, en dan die resultaat te verklein voordat jy dit vasstel of in 'n omgewingveranderlike plak. Een instrument hanteer albei kante van daardie lus.

Plaaslike verwerking hou sensitiewe data privaat

Omdat elke stap in JavaScript binne jou eie blaaier loop, verlaat die JSON wat jy plak nooit jou masjien nie. Dit is nie 'n bemarkingsfyntjie nie, dit is 'n praktiese waarborg. Jy kan 'n rou API-respons vol draertokens, 'n uitvoer van gebruikersdata, of 'n interne diens-konfigurasie inplak sonder om jou te bekommer dat 'n derdeparty-bediener dit aanteken. Maak die blad toe en die data is weg. Vir enigiemand wat onder datahanteringsreëls werk, verwyder plaaslike-slegs verwerking 'n hele kategorie risiko.

Sodra jou JSON skoon is, wil jy dit dalk verder neem. Verken die res van ons ontwikkelaarinstrumente, skakel 'n struktuur om met JSON na YAML, of dekodeer 'n ingebedde waarde met Base64. Elke instrument volg dieselfde beginsel: vinnig, gratis, en heeltemal binne jou blaaier verwerk.

Gereelde vrae

Word my JSON na 'n bediener opgelaai?

Nee. Die formateerder loop heeltemal binne jou blaaier met JavaScript. Jou data word nooit êrens gestuur nie, sodat jy veilig sensitiewe API-response of konfigurasielêers kan inplak.

Wat is die verskil tussen formatering en verkleining?

Formatering voeg inkeping en lynbreuke by om JSON leesbaar te maak. Verkleining verwyder alle opsionele spasiëring om die vrag so klein as moontlik te maak. Die data self is identies in albei vorme.

Waarom kan my JSON nie valideer nie?

Die algemeenste oorsake is agterlopende kommas, enkelaanhalingstekens in plaas van dubbele aanhalingstekens, onaangehaalde sleutels, kommentaar, en ontbrekende of onbypassende hakies. Die validator wys na die lyn waar die probleem voorkom.

Kan ek enkelaanhalingstekens in JSON gebruik?

Nee. Die JSON-spesifikasie vereis dubbele aanhalingstekens vir alle stringe en sleutels. Enkelaanhalingstekens is geldig in JavaScript maar nie in JSON nie, wat 'n gereelde bron van foute is.

Verander die instrument my data wanneer dit formateer?

Nee. Formatering voeg slegs spasiëring by of verwyder dit. Die sleutels, waardes en hul volgorde bly presies soos hulle was, sodat wat jy lees is wat die API werklik gestuur het.

Is daar 'n grootteperk?

Omdat verwerking plaaslik gebeur, hang die praktiese perk af van jou toestel en blaaier eerder as 'n bedienerplafon. Tipiese API-response en konfigurasielêers formateer onmiddellik.