JSON escape
Escape tekst voor JSON in je browser: niets wordt geüpload, er is geen limiet op de lengte en het resultaat is precies wat JSON.stringify maakt, klaar om tussen de aanhalingstekens van een JSON-string te plakken.
Zo werkt het
-
Plak je code
Plak de code in het linkervak of open een bestand. Geen code bij de hand? Klik op Voorbeeld.
-
Direct resultaat
De uitkomst verschijnt terwijl je typt. Is er een fout, dan zie je op welke regel en welk teken.
-
Kopieer of download
Kopieer het resultaat met één klik of sla het op als bestand voor je editor of project.
Wat wordt geëscaped?
De tool maakt van je tekst een geldige JSON-string, precies zoals JSON.stringify in JavaScript en json.dumps in Python dat doen. Alleen de tekens die in JSON verplicht een escape nodig hebben worden vervangen:
- Backslash
\wordt\\ - Dubbel aanhalingsteken
"wordt\" - Nieuwe regel wordt
\n, carriage return\ren tab\t - Backspace wordt
\ben form feed\f - Andere onzichtbare stuurtekens worden
\u0000tot en met\u001f
Enkele aanhalingstekens, /, < en > blijven staan: JSON heeft daar geen escape voor nodig (en \' is in JSON zelfs ongeldig). Met de optie om alles buiten ASCII als \uXXXX te schrijven worden ook letters met accenten en emoji geëscaped. Zet Met aanhalingstekens eromheen aan als je het resultaat direct als waarde in je JSON wilt plakken.
Wanneer je moet escapen
- Een bericht met regeleinden in een API-verzoek. Een echte regeleinde in een JSON-string is ongeldig; het moet
\nzijn. - Code of HTML in JSON insluiten, zoals een e-mailsjabloon, een configuratiewaarde of een webhookbody.
- JSON in JSON. Een JSON-document dat als stringveld is opgeslagen moet volledig worden geëscaped, aanhalingstekens inbegrepen. Escape één keer per nestingniveau.
- Testdata voor een unittest of een Postman-body.
Pas op voor dubbel escapen
Escape je tekst die al is geëscaped, dan wordt elke backslash verdubbeld en wordt \n \\n, wat decodeert naar een letterlijke backslash en een n in plaats van een regeleinde. Staat de uitvoer vol backslashes, dan heb je waarschijnlijk twee keer geëscaped. JSON unescape geeft het origineel terug.
Niet hetzelfde als escapen voor andere talen
JSON-escapes lijken op die van JavaScript-strings, maar zijn niet identiek aan die van SQL, shell, XML of Python. Gebruik de escaping die hoort bij waar de tekst terechtkomt, en gebruik voor HTML HTML-entiteiten.
Veelgestelde vragen
Moet ik enkele aanhalingstekens in JSON escapen?
Nee. JSON-strings gebruiken dubbele aanhalingstekens, en enkele aanhalingstekens mogen zonder escape.
Waarom worden mijn letters met accenten \u-codes?
Alleen als je de ASCII-optie kiest. Normaal blijven accenten en emoji staan, omdat JSON UTF-8 is.
Is de uitvoer hetzelfde als JSON.stringify?
Ja, voor de inhoud van de string. Het komt overeen met wat JSON.stringify tussen de aanhalingstekens schrijft.
Wordt mijn tekst geüpload?
Nee. Hij wordt in je browser geëscaped en nergens heen gestuurd.