Input JSON
Rust Generato
Inserisci dati JSON per generare struct Rust
Struct con supporto serde e type safety
Genera struct Rust da strutture dati JSON
Inserisci dati JSON per generare struct Rust
Struct con supporto serde e type safety
Utilizza questo generatore da JSON a Rust per creare strutture Rust da esempi JSON per servizi e strumenti CLI con supporto serde.
Passaggio 1: incolla un esempio JSON
Import per caricare JSON da un file, un URL o dati di esempio.Passaggio 2: scegli le opzioni della struttura Rust
Struct Name (ad esempio Root).Option<T>) e i valori sconosciuti (serde_json::Value).Passaggio 3: rivedere il codice generato
Root Type Name, gestione null e framework, se disponibili.Passaggio 4: utilizzare le strutture con serde
serde e serde_json alle tue dipendenze e abilita le macro di derivazione.serde_json::from_str.Passaggio 5: copiare o scaricare
Suggerimenti rapidi
Option<T> per i campi che possono essere mancanti o nulli.chrono solo quando il formato del timestamp è stabile.// Ingresso JSON
{
"id": 123,
"name": "Maeve Winters",
"email": "[email protected]",
"active": true,
"roles": ["admin", "editor"],
"metadata": { "plan": "pro" },
"createdAt": "2024-03-01T10:15:00Z",
"score": 99.5,
"notes": null
}
// Generated Rust structs (simplified)
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize)]
pub struct Metadata {
pub plan: String,
}
#[derive(Debug, Serialize, Deserialize)]
pub struct Root {
pub id: i64,
pub name: String,
pub email: Option<String>,
pub active: bool,
pub roles: Vec<String>,
pub metadata: Metadata,
pub created_at: String,
pub score: f64,
pub notes: serde_json::Value,
}Esplora altri strumenti JSON e schemi che funzionano alla grande insieme a questo generatore da JSON a Rust.
Converti le strutture Rust esistenti in esempi JSON e schemi JSON per documenti e convalida.
Genera uno schema JSON da esempi JSON per convalidare payload e contratti.
Formatta e convalida JSON prima di generare strutture per evitare problemi di runtime.
Genera strutture Go quando gestisci anche i servizi Go.
Il generatore crea definizioni di struct Rust con derive macro, supporta serde per serializzazione/deserializzazione, usa Option per valori null e segue le convenzioni di naming Rust.
Le struct generate includono derive Serialize e Deserialize e attributi serde per la mappatura dei nomi dei campi e la gestione dei campi opzionali.
I valori null nel JSON vengono mappati a Option<T> in Rust. I campi opzionali possono includere attributi come #[serde(skip_serializing_if = "Option::is_none")].
Gli array JSON vengono mappati a Vec<T> e gli oggetti annidati generano struct separate. Le strutture complesse sono supportate con tipi generici corretti.