Cours Int-Gration Des SI - Ch2!24!25
Cours Int-Gration Des SI - Ch2!24!25
Cours Int-Gration Des SI - Ch2!24!25
Le format JSON
Site officiel de JSON: http://www.json.org/
Motivations
Formats d’échange de données
JSON
Terminologie
JSON est indépendant de tout langage
Syntaxe de base
Imbrication des structures object et array
Validation d’un document JSON
Exemple d’usage de JSON
XML vs JSON
Principaux usages de JSON
Objectifs du chapitre
3
Motivations
4
Formats d’échange de données: XML et JSON
5
Formats d’échange de données: XML et JSON (2)
Ces formats sont, entre autres, conçus pour le codage des
documents et sont adaptés aux échanges dans un
environnement distribué.
Un document en JSON ou XML peut être transféré par
réseau entre deux machines sans perte d’information et
sans problème de codage/décodage
(sérialisation/désérialisation).
6
Source: Cours de Philippe Genoud
JSON
9
Syntaxe de base
JSON est basé sur deux structures de base: une collection
de paires clé/valeur (object) délimitée par { } et liste
ordonnée de valeurs (array) délimitée par [ ] .
Source: www.json.org 10
Syntaxe de base (2)
Une valeur peut être:
Une chaîne de caractères.
Un nombre
Un objet
Une liste
valeurs true, false ou null.
Les objets et les listes peuvent
être imbriquées.
Source: www.json.org
11
Syntaxe de base (3)
1ère structure de base d’un document codé en JSON : les
paires (clé, valeur).
Exemple1: { "Prenom": "Ahmed" }
Exemple2:
{"Prenom": "Ahmed", "Nom": "Ben Mohamed", "Tél":
98333116, "Email": " [email protected]"}
La représentation équivalente en XML est:
12
Syntaxe de base (4)
2ème structure de base d’un document codé en JSON : liste
ordonnée de valeurs.
Exemple1: [125,17,14,8,2]
Exemple2: ["Hi", " Hello ", "Bonjour!", "Bienvenue"]
Pour ajouter des caractères à une chaîne:
\b pour effacer le dernier caractère comme " AsmaR\b" ,
\n pour retour à la ligne comme " Tunis\nGafsa" ,
\r pour effacer toute la chaîne " AsmaR\r" ,
\t pour tabulation "Asma\tAyadi" ,
\" pour ajouter " dans la chaîne "\"Asma\"" ,
\\pour ajouter \ dans la chaîne "C:\\". 13
Imbrication des structures object et array
Exemple1:
{"Employés":["Ahmed", "Ali", "Mohamed", "Yassine"]}
Exemple2:
{"Nom":"Ben Lamine","Prenom":"Ali", "Age":25, "Voitures":null}
Exemple3:
{"Nom":"Ben Lamine","Prenom":"Ali", "Age":25,
"Voitures":{"Voiture1":"Fiat", "Voiture2":"Renault", "Voiture3":"Seat" }}
Exemple4:
{"Nom":"Ben Lamine","Prenom":"Ali", "Age":25,
"Voitures":[{"Marque":"Fiat", "Modèle":"Panda"}, { "Marque":"Renault",
"Modèle":"Clio"}, {"Marque":"Seat", "Modèle":"Ibiza" }]}
14
Validation d’un document JSON
15
Exemple d’usage
Convertir des données JSON en un objet Java Script et
inversement: récupérer des données à partir d’un serveur web
et les transformer en un objet JS à utiliser dans une page web.
16
XML vs JSON
17
XML vs JSON
XML par rapport à JSON ne connaît pas explicitement la notion de
tableau. Tout est uniformément représenté par balisage. On peut
introduire une balise Tels englobant les éléments du tableau.
18
XML vs JSON
19
Principaux usages de JSON
Chargements asynchrones
Avec la montée en flèche des chargements asynchrones
tels que l'AJAX (Asynchronous JavaScript And XML)
dans le web actuel, il est devenu de plus en plus
important de pouvoir charger des données organisées,
de manière rapide et efficace.
Le format JSON s'est montré adapté à ce type de
besoins car il est léger, et indépendant des langages qui
l'utilisent.
20
Principaux usages de JSON (2)
Les APIs
Des sociétés telles que Twitter, Facebook ou
LinkedIn, offrent essentiellement des services basés
sur l'échange d'informations.
Bien qu'il n'y a pas de domination totale d'un des
deux formats (JSON ou XML), XML est encore le
plus utilisé, mais JSON est sur le chemin de le
remplacer.
21
Références
22