JSON naar Rust
Converteer JSON naar Rust-structs online. Genereer Serde-compatibele structs voor Rust-ontwikkeling. Gratis, draait in je browser—geen data naar servers.
JSON-invoer
Rust-uitvoer
Wat is JSON naar Rust?
Als je een REST API aanroept in Rust, heb je overeenkomende struct-definities nodig voordat je iets kunt deserialiseren met Serde. Die structs met de hand schrijven — zeker voor diep genest JSON — is vervelend en foutgevoelig. Dit tool genereert automatisch Serde-compatibele Rust-structs. Plak je JSON, krijg kant-en-klare structs met #[derive(Serialize, Deserialize)], en voeg ze direct toe aan je Cargo-project.
Deze tool genereert Rust-structs uit je JSON. Activeer Serde voor Serialize/Deserialize-derives. Activeer Option types voor optionele velden. De uitvoer werkt met serde_json::from_str en serde_json::to_string.
De conversie draait volledig in je browser. Je JSON wordt nooit naar een server gestuurd.
Wanneer JSON naar Rust helpt
Bij het ontwikkelen van Rust-apps die REST-API's consumeren heb je getypeerde structs nodig.
Hoe deze tool te gebruiken
JSON plakken of uploaden
Kopieer je JSON en plak het in de linker editor. Je kunt ook op Uploaden klikken om een bestand te laden. Gebruik de Voorbeeld-knop voor voorbeelddata. Stel de structnaam en opties in het configuratiepaneel in.
Gegenereerde structs controleren
Het rechterpaneel toont de gegenereerde Rust-structs. Geneste objecten worden aparte structs. Arrays worden Vec<T>. Bij ongeldige JSON-syntax: eerst de JSON Formatter of de JSON Validator gebruiken.
Kopiëren of downloaden
Gebruik Kopiëren of Downloaden om de code te krijgen. Voeg serde en serde_json toe aan je Cargo.toml. Plak het in je Rust-project.
JSON naar Rust-voorbeelden
Hier een voorbeeld van het genereren van Rust-structs uit een JSON-object.
Voorbeeld: Abonnee-record
JSON-invoer:
Gegenereerde Rust-uitvoer:
Wanneer JSON naar Rust helpt
De meeste ontwikkelaars hebben dit nodig bij de integratie met REST-API's.
Als je eerst twee JSON-bestanden moet samenvoegen: er is de tool JSON Samenvoegen voor.
API-responses, configuratiebestanden of data-exporten zijn vaak JSON. Deze hier doorheen halen helpt Rust-structs te genereren.
Veelgestelde vragen
Hoe deserialiseer ik JSON in Rust met Serde?
Voeg serde = { version = "1.0", features = ["derive"] } en serde_json = "1.0" toe aan je Cargo.toml. Leid Deserialize af op je struct, roep dan serde_json::from_str::<YourStruct>(&json_string) aan. Genereer de struct hier door je JSON te plakken.
Wat doet #[serde(rename)] in Rust?
#[serde(rename = "jsonKey")] vertelt Serde een specifieke JSON-sleutel te mappen naar een Rust-veldnaam. Handig als JSON camelCase gebruikt (zoals planName) maar je Rust-struct snake_case gebruikt (plan_name). De generator voegt ze automatisch toe wanneer nodig.
Hoe ga ik om met optionele of nullable JSON-velden in Rust?
Schakel Option Types in om nullable velden te wikkelen in Option<T>. Dit betekent dat ontbrekende of null JSON-velden deserialiseren naar None in plaats van een fout te veroorzaken. Je kunt ook #[serde(skip_serializing_if = "Option::is_none")] toevoegen om null-velden te weglaten bij serialiseren.
Wordt mijn JSON naar een server gestuurd?
Nee. De struct-generatie werkt volledig in je browser. Je JSON verlaat nooit je machine.
Hoe zit het met geneste JSON-objecten en arrays?
Geneste JSON-objecten worden aparte Rust-structs, elk met hun eigen #[derive(Serialize, Deserialize)]. Arrays worden Vec<T> van die struct-typen. De generator verwerkt willekeurige nestdiepte.
Gerelateerde tools
Voor Rust JSON: Serde en serde_json. Voor JSON: JSON-specificatie.