Entrada JSON

Saída F#

O que é JSON para F#?

F# usa uniões discriminadas e records para dados. Bibliotecas como FSharp.Data ou Thoth.Json fazem serialização JSON. Esta ferramenta gera tipos F# (records, unions) a partir da sua estrutura JSON para fazer parse de respostas de API com segurança de tipos. A especificação JSON define o formato de entrada.

A conversão roda no seu navegador. Configure o nome do tipo no painel de configuração. Nada é enviado a um servidor. Os tipos gerados funcionam com projetos .NET e F#. Para interop com C#, use JSON para C#.

Como usar esta ferramenta

1

Colar ou enviar JSON

Cole seu JSON ou envie um arquivo. Configure o nome do tipo no painel de configuração. JSON inválido mostrará um erro. Use o Validador JSON para verificar a sintaxe primeiro.

2

Revisar a saída F#

O painel direito mostra os tipos F# gerados. Adicione Thoth.Json ou FSharp.Data e derive encoders/decoders conforme necessário. Ajuste campos opcionais a tipos Option para valores JSON nullable.

3

Copiar ou baixar

Use <strong>Copiar</strong> ou <strong>Baixar</strong>. Para formatar JSON primeiro, use o Formatador JSON. Para validação, use o Validador JSON.

Exemplos de JSON para F#

Aqui está um exemplo de geração de tipos F# a partir de um objeto JSON.

Exemplo: Registro de assinante

Entrada JSON:

Entrada

Saída F# gerada:

Saída

Quando JSON para F# ajuda

Ao construir aplicações F# ou .NET que consomem APIs REST, você precisa de modelos tipados para o payload de resposta. Colar uma resposta de exemplo aqui fornece records ou unions F# para Thoth.Json ou FSharp.Data. A linguagem F# e a documentação F# cobrem records e uniões discriminadas. Para extrair valores específicos primeiro, use jq.

Perguntas frequentes

Option para campos opcionais?

Use Option<T> para campos JSON opcionais. Thoth.Json e FSharp.Data lidam com null e chaves ausentes. Sem Option, campos ausentes causarão erro de decodificação.

Thoth.Json vs FSharp.Data?

Thoth.Json usa encoders/decoders estilo F#. FSharp.Data fornece type providers e parsing JSON. Ambos funcionam com os tipos gerados. Escolha conforme as dependências do seu projeto.

Meus dados são privados?

Sim. A geração roda inteiramente no seu navegador. Nenhum JSON ou código é enviado a um servidor.

Records vs classes?

Records F# são imutáveis e concisos. O gerador tipicamente produz records. Use classes se precisar de estado mutável ou requisitos de interop com C#.

Posso usar com Suave ou Giraffe?

Sim. Giraffe é um framework web F# popular. Os tipos gerados funcionam com handlers HTTP. Use Thoth.Json ou similar para serialização request/response. Para testes de API, Postman e jq são úteis.

Ferramentas relacionadas

FSharp.Data, Thoth.Json, especificação JSON, RFC 8259, F#.