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

Expecting property name enclosed in double quotes: line L column C (char N)

El parser está dentro de un objeto y esperaba una clave entre comillas dobles. Encontró otra cosa: una comilla simple, una palabra desnuda, o en versiones antiguas de Python una coma final. JSON exige que las claves sean cadenas entre comillas dobles, sin excepciones para las claves que parezcan identificadores.

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 Un dict de Python impreso en vez de serializado

    str(d) y print(d) producen comillas simples. Esta es, con diferencia, la fuente más común de este error.

    Falla

    data = str({'a': 1})
    json.loads(data)

    Funciona

    data = json.dumps({'a': 1})
    json.loads(data)
  2. 02 El entrecomillado de la AWS o Azure CLI en Windows

    PowerShell y cmd manejan las comillas de forma distinta a una shell POSIX, así que los argumentos JSON en línea llegan a la CLI con las comillas dobles eliminadas. El arreglo fiable es meter el JSON en un archivo y pasar file://params.json en vez de pelearse con la shell.

    Falla

    aws dynamodb query --key-condition-expression "{\"id\": ...}"

    Funciona

    aws dynamodb query --cli-input-json file://params.json
  3. 03 Una coma final, en Python 3.12 y anteriores

    Antes de la 3.13, una coma final producía este mensaje. Desde la 3.13 tiene el suyo propio: «Illegal trailing comma before end of object». Si estás siguiendo una guía que no menciona versiones, esta es la razón por la que puede no coincidir con lo que ves.

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) Expected property name or '}' in JSON at position 1 (line 1 column 2)

Preguntas frecuentes

¿Puedo parsear el repr de un dict de Python sin reescribirlo?
ast.literal_eval lo maneja de forma segura: evalúa sintaxis literal de Python sin ejecutar código arbitrario, a diferencia de eval. Después pasa el resultado por json.dumps si necesitas JSON de verdad.

Arréglalo ahora

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

Convertir las comillas simples a JSON