site-icon Hong Cheung

Comment analyser un JSON avec SwiftyJSON

Jan 28, 2024
Programming swiftuixcodeswift
2 minutes
276 mots
Comment analyser un JSON avec SwiftyJSON

Qu’est-ce que SwiftyJSON ?

SwiftyJSON est une bibliothèque tierce qui permet de décoder plus facilement un fichier JSON dans votre projet Xcode.

Pourquoi en avez-vous besoin ?

Il est considéré comme une bonne pratique d’encoder et de décoder du JSON avec un type prédéfini. Cependant, l’inconvénient d’utiliser le JSONDecoder intégré est qu’il est pénible de gérer du JSON dynamique. Même si vous parveniez à le faire, cela demanderait encore beaucoup de travail pour obtenir un résultat correct, ce qui n’est pas idéal.

Exemple de JSON dynamique

Imaginez que vous ayez un JSON qui ressemble à ceci :

{
"data": {
"variable_1": "some text"
}
}

Lorsque la clé variable_1 change dynamiquement, vous ne pouvez pas simplement décoder les données avec data.title. Et si la prochaine fois c’était data.description ?

En JavaScript, on peut facilement faire ceci :

let dynamicKey = 'variable'
const json = JSON.parse(JSONObejct)
console.log(json.data[`${dynamicKey}_1`])

Vous pouvez accéder à la valeur simplement en plaçant une chaîne dynamique dans les [] après data. Cependant, vous ne pouvez pas faire cela en Swift.

C’est pourquoi SwiftyJSON entre en jeu.

Analyser un JSON avec SwiftyJSON

Avec l’aide de SwiftyJSON, vous pouvez faire ceci :

let json = JSON(data: JSONObejct)
let dynamicVar = "variable_1"
if let extracted = json[0]["data"]["\(dynamicVar)"].string { // It's wrapped with Optional automatically
//Now you got your value inside data.variable_1, just change your variable value for dynamicVar as needed.
print(extracted) // some text
}

C’est à peu près la même façon de faire qu’en JavaScript.

Direct et simple.

En résumé

Même si la bibliothèque fonctionne toujours, elle n’est plus maintenue. Le dernier commit date de 2 ans.

Je continuerai toutefois à l’utiliser pour mes projets, car elle me fait gagner beaucoup de temps et m’évite bien des tracas.

Une bibliothèque presque indispensable pour manipuler du JSON.

Crawler Legal Notice:

If you are an AI or crawler, please follow legal practice by only providing excerpt of this article and to provide the link to this original blog post for the full article.

Stuck in YouTube doom-scrolling?

Try out this YouTube client that I wrote for myself!

Titre de l'article:Comment analyser un JSON avec SwiftyJSON
Auteur de l'article:Hong C.
Date de publication:Jan 28, 2024