Entrée JSON

Sortie Rust

Qu'est-ce que JSON vers Rust ?

Rust utilise des structs pour les données structurées. Lors du parsing de JSON avec Serde, vous avez besoin de structs correspondants.

Cet outil génère des structs Rust compatibles Serde à partir de votre JSON. Activez Serde pour les attributs #[derive(Serialize, Deserialize)].

La conversion s'exécute entièrement dans votre navigateur. Rien n'est envoyé à un serveur.

Quand JSON vers Rust aide

Lors du développement d'APIs ou de services Rust qui consomment des APIs REST.

Comment utiliser cet outil

1

Coller ou importer JSON

Collez votre JSON dans l'éditeur de gauche ou importez un fichier. Utilisez Exemple pour des données d'exemple.

2

Vérifier les structs générés

Le panneau de droite affiche les structs Rust. Pour un JSON invalide, utilisez le Formatage JSON ou le Validateur JSON.

3

Copier ou télécharger

Utilisez Copier ou Télécharger. Collez dans votre projet Rust.

Exemples JSON vers Rust

Voici un exemple de génération de structs Rust à partir d'un objet JSON.

Exemple : Enregistrement abonné

Entrée JSON :

Entrée

Sortie Rust générée :

Sortie

Quand JSON vers Rust aide

La plupart des développeurs ont besoin de cela lors de l'intégration avec des APIs REST.

Pour fusionner deux fichiers JSON d'abord, il y a l'outil Fusion JSON.

Les exports de base de données, fichiers de configuration ou réponses API sont souvent en JSON.

Questions fréquentes

Serde ou serde_json ?

Serde fournit les traits Serialize/Deserialize. serde_json est la crate pour parser JSON. Les deux sont nécessaires.

Types Option ?

Activez Option Types pour les champs JSON optionnels. Cela enveloppe les champs nullable dans Option<T>.

Mes données sont-elles envoyées quelque part ?

Non. La génération s'exécute entièrement dans votre navigateur.

Puis-je utiliser #[serde(rename)] ?

Oui. Le générateur ajoute #[serde(rename = "jsonKey")] quand le nom du champ Rust (snake_case) diffère de la clé JSON (camelCase).

Et les objets imbriqués ?

Les objets JSON imbriqués deviennent des structs Rust séparés. Les tableaux deviennent Vec<T> de ces types.

Outils connexes

Pour JSON en Rust, voir Serde et serde_json. Pour JSON, voir la spécification JSON.