JSON a F#
Convertir JSON a tipos F# para desarrollo F#
Entrada JSON
Salida F#
¿Qué es JSON a F#?
F# usa uniones discriminadas y registros para datos. Bibliotecas como FSharp.Data o Thoth.Json manejan la serialización JSON. Esta herramienta genera tipos F# (records, unions) desde tu estructura JSON para parsear respuestas de API con seguridad de tipos. La especificación JSON define el formato de entrada.
La conversión se ejecuta en tu navegador. Configura el nombre del tipo en el panel de configuración. No se envía nada a ningún servidor. Los tipos generados funcionan con proyectos .NET y F#. Para interop con C#, usa JSON a C#.
Cómo usar esta herramienta
Pegar o subir JSON
Pega tu JSON o sube un archivo. Configura el nombre del tipo en el panel de configuración. JSON inválido mostrará un error. Usa el Validador JSON para comprobar la sintaxis primero.
Revisar la salida F#
El panel derecho muestra los tipos F# generados. Añade Thoth.Json o FSharp.Data y deriva encoders/decoders según necesites. Ajusta campos opcionales a tipos Option para valores JSON nullable.
Copiar o descargar
Usa <strong>Copiar</strong> o <strong>Descargar</strong>. Para formatear JSON primero, usa el Formateador JSON. Para validación, usa el Validador JSON.
Ejemplos de JSON a F#
Aquí un ejemplo de generación de tipos F# desde un objeto JSON.
Ejemplo: Registro de suscriptor
Entrada JSON:
Salida F# generada:
Cuándo ayuda JSON a F#
Al construir aplicaciones F# o .NET que consumen APIs REST, necesitas modelos tipados para el payload de respuesta. Pegar una respuesta de ejemplo aquí te da records o unions F# para Thoth.Json o FSharp.Data. El lenguaje F# y la documentación F# cubren records y uniones discriminadas. Para extraer valores específicos primero, usa jq.
Preguntas frecuentes
¿Option para campos opcionales?
Usa Option<T> para campos JSON opcionales. Thoth.Json y FSharp.Data manejan null y claves faltantes. Sin Option, los campos faltantes causarán un error de decodificación.
¿Thoth.Json vs FSharp.Data?
Thoth.Json usa encoders/decoders estilo F#. FSharp.Data proporciona type providers y parsing JSON. Ambos funcionan con los tipos generados. Elige según las dependencias de tu proyecto.
¿Son mis datos privados?
Sí. La generación se ejecuta completamente en tu navegador. No se envía JSON ni código a ningún servidor.
¿Records vs clases?
Los records F# son inmutables y concisos. El generador típicamente produce records. Usa clases si necesitas estado mutable o requisitos de interop con C#.