JSON ⇄ YAML conversor
JSON ⇄ YAML
Converte nos dois sentidos, preservando a ordem das chaves e escolhendo estilo de bloco ou de fluxo do lado YAML.
Converte entre YAML, JSON e TOML em qualquer direção, no navegador. Os parsers foram escritos para este site em vez de puxados do npm, e é por isso que a página consegue listar exatamente o que recusa — âncoras, tags, streams de vários documentos — em vez de lê-los errado em silêncio.
Entrada
Solte um arquivo .yaml, .json ou .toml
Lido nesta aba. Nada é enviado.
JSON de saída
Foram escritos aqui em vez de puxados do npm, o que quer dizer que o subconjunto é escolhido e não herdado. Tudo o que está nesta lista é recusado pelo nome em vez de ser lido errado.
Como usar
Cole a configuração
O formato é detectado a partir do texto, e o rótulo abaixo do seletor diz qual ele escolheu. Corrija se o palpite estiver errado: um arquivo JSON também é YAML válido, então um documento `{ }` pode ir para qualquer um dos lados.
Escolha o destino
YAML para um manifesto Kubernetes ou um arquivo de CI, JSON para qualquer coisa que um programa vá analisar, TOML para um arquivo de projeto Rust ou Python.
Leia os avisos, não só a saída
Uma conversão que deu certo ainda pode ter mudado o significado: um `null` perdido no caminho para TOML, um `yes` lido como a string que ele é sob YAML 1.2. Isso aparece em uma nota abaixo da saída em vez de ficar escondido.
Abra a lista de escopo quando algo for recusado
A seção recolhida no fim nomeia cada construção que estes parsers não tratam, e por quê. Uma recusa aponta para essa lista em vez de falhar com um erro de parser que você teria de interpretar.
Perguntas frequentes
Por que minhas âncoras e aliases são recusados?
Porque expandir `*base` corretamente significa implementar a semântica de merge do YAML, e errar isso de forma sutil produz um arquivo que parece certo e faz deploy de outra coisa. Expandi-los à mão antes de colar é confiável; adivinhar aqui não é. A mesma razão cobre `<<: *base`.
Por que `yes` virou uma string?
Porque o esquema core do YAML 1.2 diz que é: só `true` e `false` são booleanos. Parsers de YAML 1.1, incluindo alguns ainda em produção, leem como booleano. A diferença é anunciada nos avisos quando ocorre, porque é exatamente o tipo de coisa que muda um deploy.
O que acontece com um `null` a caminho do TOML?
Ele é descartado e um aviso diz isso. TOML não tem valor nulo nenhum, então as opções eram omitir a chave ou inventar um marcador, e inventar um colocaria uma string literal `"null"` na configuração de alguém.
Os comentários são preservados?
Não. A conversão passa por um modelo de dados, e comentários não são dados: JSON não tem onde colocá-los. Se você precisa dos comentários, os formatadores de YAML e TOML deste site reindentam no lugar e os mantêm.
Pode receber de
Formatador e validador de JSON
JSON Formatter & Validator
Formata, minifica e valida JSON, apontando a linha e a coluna exatas de um erro de sintaxe.
Formatador e validador de YAML
YAML Formatter & Validator
Reindenta YAML de forma consistente, valida e aponta os erros de tabulação e âncora que quebram os parsers.
JSON ⇄ TOML conversor
JSON ⇄ TOML
Converte entre JSON e TOML, mapeando objetos aninhados em cabeçalhos de tabela.
Formatador e validador de TOML
TOML Formatter & Validator
Formata e valida TOML, normalizando a ordem das tabelas e o estilo das tabelas em linha.
Em seguida
Estas aceitam o que esta ferramenta produz, então o resultado pode ir direto.
Formatador e validador de JSON
JSON Formatter & Validator
Formata, minifica e valida JSON, apontando a linha e a coluna exatas de um erro de sintaxe.
Validador de JSON Schema
JSON Schema Validator
Valida um documento contra um JSON Schema e informa cada falha com o caminho da instância.
JSON ⇄ TOML conversor
JSON ⇄ TOML
Converte entre JSON e TOML, mapeando objetos aninhados em cabeçalhos de tabela.
Formatador e validador de YAML
YAML Formatter & Validator
Reindenta YAML de forma consistente, valida e aponta os erros de tabulação e âncora que quebram os parsers.
Codificar e decodificar Base64
Base64 Encoder & Decoder
Codifica e decodifica Base64 e Base64URL para texto ou arquivos, tratando UTF-8 corretamente.
curl para código
curl to Code
Converte um comando curl em fetch, axios, Python requests, Go, PHP ou PowerShell.