Saltar al contenido
jsonbeautifiers
Español
Python Verificado ejecutando el parser en CPython 3.14.3.

Invalid control character at: line L column C (char N)

Una cadena contiene un carácter literal por debajo de U+0020, normalmente un salto de línea o un tabulador reales. JSON exige que vayan escapados. Python tiene una opción strict=False que los acepta, pero el documento resultante sigue siendo inválido para cualquier otro consumidor.

Pega tu JSON y ve exactamente dónde se rompe

Entrada

Nada de lo que pegues sale de tu navegador. La lista de permitidos de connect-src convierte eso en una garantía del navegador, no en una promesa. Compruébalo tú mismo

Qué lo provoca realmente

Ordenados por la frecuencia con la que cada uno acaba siendo la respuesta.

  1. 01 Texto multilínea dentro de una cadena

    Los extractos de log, el SQL, las trazas de pila y el HTML de plantillas llevan saltos de línea reales.

    Falla

    json.loads('{"sql": "SELECT *
    FROM t"}')

    Funciona

    json.loads('{"sql": "SELECT *\\nFROM t"}')
  2. 02 JSON ensamblado con f-strings o concatenación

    Los valores interpolados no se escapan. Construye un dict y usa json.dumps, que lo escapa todo correctamente.

    Falla

    body = f'{{"note": "{note}"}}'

    Funciona

    body = json.dumps({"note": note})
  3. 03 Un tabulador copiado de una hoja de cálculo

    Invisible, y sobrevive intacto al copiar y pegar.

El mismo error en otros entornos

El problema de fondo es idéntico; solo cambia la redacción. Si un compañero reporta alguno de estos, está mirando exactamente lo mismo que tú.

JavaScript (V8) Bad control character in string literal in JSON at position 11 (line 1 column 12)

Preguntas frecuentes

¿Qué hace strict=False?
json.loads(s, strict=False) permite caracteres de control dentro de las cadenas. Te desatasca, pero el documento sigue siendo JSON inválido, así que cualquier cosa aguas abajo que no sea Python lo seguirá rechazando. Mejor arregla al productor.

Arréglalo ahora

Pega el payload en la herramienta de arriba, o ve directamente a la creada para este trabajo.

Escapar la cadena correctamente