JSON-invoer

Rust-uitvoer

Wat is JSON naar Rust?

Rust gebruikt structs voor gestructureerde data. Bij het consumeren van JSON met Serde heb je passende struct-definities nodig.

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

1

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.

2

Gegenereerde structs controleren

Het rechterpaneel toont de gegenereerde Rust-structs. Geneste objecten worden aparte structs. Arrays worden <code>Vec&lt;T&gt;</code>. Bij ongeldige JSON-syntax: eerst de JSON Formatter of de JSON Validator gebruiken.

3

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:

Invoer

Gegenereerde Rust-uitvoer:

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

Serde of handmatige deserialisatie?

Serde is de standaard voor JSON in Rust. Het genereert Serialize en Deserialize via derive-macros. Voeg serde en serde_json toe aan Cargo.toml.

Wat met Option voor null-velden?

Activeer Option types voor optionele JSON-velden. Dit wikkelt nullable velden in Option<T>.

Worden mijn gegevens ergens naartoe gestuurd?

Nee. De generatie draait volledig in je browser.

Kan ik #[serde(rename)] gebruiken?

Ja. De generator voegt #[serde(rename = "jsonKey")] toe wanneer de Rust-veldnaam (snake_case) verschilt van de JSON-sleutel (camelCase).

Wat met geneste objecten?

Geneste JSON-objecten worden aparte Rust-structs. Arrays worden Vec<T> van die struct-types.

Gerelateerde tools

Voor Rust JSON: Serde en serde_json. Voor JSON: JSON-specificatie.