Il link prende il contenuto simile a JSON e lo converte in JSON che è sicuro da valutare come codice sorgente JavaScript e che può essere incorporato in HTML <script> elementi e in XML <![CDATA[...]]> sezioni.
Ad esempio, dato
{
key1: "user_input",
key2: ["user_input1", "user_input2"]
}
Conserva diverse proprietà:
- Le chiavi devono essere citate correttamente.
- Le parentesi corrispondono.
- Tutti i caratteri newline JavaScript (CR, LF, U + 2028, U + 2029) nelle stringhe sono
\u.... escape.
- Quotes (
" ), backslash ( \ ) sono \u.... di escape per garantire che le stringhe non finiscano prematuramente.
- Le parentesi angolari (
< e > ) sono \u.... di escape se necessario per impedire alle stringhe di contenere il testo letterale </script o ]]> che impedirebbe l'incorporamento.
- Tutti i caratteri di controllo (in realtà i caratteri non consentiti in XML) sono
\u.... con escape compreso U + 0-U + 1F escluso tab, U + 7F, U + FFFE, U + FFFF.
- I sostituti orfani UTF-16 sono
\u.... con escape.
- Tutte le sequenze di escape vengono convertite in sequenze di escape JSON valide, inclusi escape ottali (
2 ), escape esadecimale a due cifre ( \x0A ) e escape di caratteri singoli ( \! ).
Può essere una buona idea per \u.... sfuggire a cose come + a defang UTF-7.