Ir para o conteúdo
jsonbeautifiers
Português
Python Verificado rodando o parser em CPython 3.14.3.

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

O parser está dentro de um objeto e esperava uma chave entre aspas duplas. Encontrou outra coisa: uma aspa simples, uma palavra solta, ou em versões antigas do Python uma vírgula sobrando. O JSON exige que as chaves sejam strings entre aspas duplas, sem exceção para chaves que pareçam identificadores.

Cole o seu JSON e veja exatamente onde ele quebra

Entrada

Nada do que você cola sai do seu navegador. A lista de permissões connect-src transforma isso em uma garantia do navegador, e não em uma promessa. Confira você mesmo

O que realmente causa isso

Ordenados por quantas vezes cada um acaba sendo a resposta.

  1. 01 Um dict do Python impresso em vez de serializado

    str(d) e print(d) produzem aspas simples. Esta é de longe a fonte mais comum deste erro.

    Quebra

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

    Funciona

    data = json.dumps({'a': 1})
    json.loads(data)
  2. 02 O tratamento de aspas da AWS ou Azure CLI no Windows

    PowerShell e cmd lidam com aspas de forma diferente de um shell POSIX, então argumentos JSON inline chegam à CLI sem as aspas duplas. A correção confiável é colocar o JSON em um arquivo e passar file://params.json em vez de brigar com o shell.

    Quebra

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

    Funciona

    aws dynamodb query --cli-input-json file://params.json
  3. 03 Uma vírgula sobrando, no Python 3.12 e anteriores

    Antes do 3.13, uma vírgula sobrando produzia esta mensagem. A partir do 3.13 ela tem a própria: "Illegal trailing comma before end of object". Se você está seguindo um guia que não menciona versões, é por isso que ele pode não bater com o que você vê.

O mesmo erro em outros runtimes

O problema de fundo é idêntico; só muda a redação. Se um colega reportar uma dessas mensagens, ele está olhando exatamente para a mesma coisa que você.

JavaScript (V8) Expected property name or '}' in JSON at position 1 (line 1 column 2)

Perguntas frequentes

Dá para parsear o repr de um dict do Python sem reescrever?
ast.literal_eval dá conta com segurança: ele avalia sintaxe literal do Python sem executar código arbitrário, ao contrário do eval. Depois passe o resultado pelo json.dumps se você precisa de JSON de verdade.

Conserte agora

Cole o payload na ferramenta acima, ou vá direto para a que foi feita para este trabalho.

Converter aspas simples em JSON