LFUnminify, kodformatering på nätet av Ludovic Frank

Formatera minifierad JSON online

Klistra in ett API-svar, en konfigurationsfil eller en loggrad och läs innehållet ordentligt. Objekt och arrayer får indrag efter djup, med en nyckel per rad och syntaxmarkering i resultatet.

Din läsbara, formaterade kod visas här

Varför JSON levereras komprimerad

JSON är standardspråket för API:er, och API:er optimerar för antal byte snarare än för läsbarhet. Ett svar från en REST-ändpunkt eller en GraphQL-server serialiseras utan ett enda blanksteg, vilket passar nätverket utmärkt men människor betydligt sämre. Samma sak gäller konfigurationsfiler som verktyg skriver till kodarkivet, strukturerade loggrader, JSON-LD-block inbäddade på en sida och allt du kopierar från nätverksfliken i utvecklarverktygen.

Formatering gör strukturen tydlig

JSON med indrag ger snabba svar på strukturella frågor. Hur djupt går objektet, är fältet en array av objekt eller ett objekt med arrayer, vilken nyckel har värdet null när du väntade dig ett värde, och var slutar en post och börjar nästa? Att leta efter en saknad eller felstavad nyckel i formaterade data tar sekunder. På en enda rad slutar samma försök ofta med att man ger upp och skriver ett skript. En praktisk granskning börjar med en känd postidentifierare. Hitta värdet, granska objektet det tillhör och jämför de relevanta nycklarna med kontraktet som applikationen förväntar sig. Skilj en saknad nyckel från ett uttryckligt null-värde eller en tom array, eftersom applikationer ofta hanterar dem olika. Formatering gör skillnaderna lättare att se, men kontrollerar inte verksamhetsregler, upptäcker inte alla problem med dubbla nycklar och verifierar inget API-kontrakt. Använd applikationstester och schemavalidering för sådana kontroller när du har hittat den misstänkta delen av datainnehållet.

Ogiltig JSON upptäcks direkt

Eftersom indata måste tolkas innan de kan skrivas ut är formatering också den snabbaste giltighetskontroll du har tillgång till. Ett avslutande kommatecken, en sträng inom enkla citattecken, ett citattecken utan escape-tecken i ett värde eller ett avklippt svar stoppar tolkningen och ger dig ett fel i stället för ett resultat. Det är ofta så man upptäcker att API-svaret man felsökte var avklippt, eller att en konfigurationsfil har ett kommatecken för mycket.

JSON, JSON Lines och JSONP

Den här sidan formaterar ett enda JSON-dokument. Om dina indata är en loggfil med ett JSON-objekt per rad formaterar du de enskilda rader du är intresserad av i stället för hela filen, eftersom filen som helhet inte är ett giltigt dokument. Och om ett svar börjar med ett funktionsnamn som omsluter data är det JSONP och inte JSON, vilket är precis därför verktyget ibland identifierar en nyttolast som JavaScript. I så fall stämmer identifieringen, och att formatera den som JavaScript ger ändå ett fullt läsbart resultat.

Vanliga frågor

Valideras min JSON?

I praktiken ja. Dokumentet måste kunna tolkas innan det kan formateras, så varje syntaxfel avbryter bearbetningen och rapporteras i stället för ett resultat. Det är det snabbaste sättet att kontrollera om en nyttolast är välformad.

Bevaras nycklarnas ordning?

Formateraren sorterar inte avsiktligt objektnycklar. Syftet är att göra den angivna strukturen lättare att läsa. Behåll originalet när exakt text är viktig, eftersom formatering kan ändra uppställning och representation. Nycklarnas ordning bevisar inte heller i sig att innehållet följer schemat som applikationen förväntar sig.

Kan jag formatera mycket stora API-svar?

Webbläsarens tillgängliga minne och processorkraft avgör vad som är praktiskt möjligt. Stora svar kan göra fliken långsam eller få den att låsa sig under formatering och syntaxmarkering, och ingen viss storlek garanteras. Börja med ett mindre, fullständigt objekt eller en array när du undersöker en post i ett stort svar.

Formatera ett annat format