Andiamo in ordine... prima di tutto il
tipo mime:
application/json
(RFC 8259).
JSON sta per JavaScript Object Notation ed è un formato leggero per l'interscambio dei dati. L'idea che ha portato alla sua creazione era di avere un linguaggio facile da leggere per le persone e da analizzare/generare per i computers. Quello che viene rappresentato è un singolo oggetto ed è basato sulla notazione che usa Javascript per definire le costanti e i vettori.
Quello che segue è un esempio di specifica di una rubrica:
{ "nome": "rubrica lavoro", "contatti":[ {"nome":"Pluto", "numero":"555-87562345", "eta":18 }, {"nome":"Pippo", "numero":"555-874534555", "eta":14 } ] }
Le regole da seguire sono piuttosto semplici:
- le parentesi quadre contengono array (composti da un elenco di valori separati da virgola)
- le parentesi graffe contengono oggetti (composti da un elenco di
nome: valore
separati da virgole) - i nomi vanno racchiusi tra virgolette
- i valori di tipo stringa vanno tra virgolette
- i valori di tipo numerico e booleano non hanno bisogno di virgolette
Ad oggi moltissimi linguaggi hanno delle librerie pee leggere/scrivere dati in formato JSON e alcuni database permettono di registrare le informazioni in questo formato.
Proviamo a vedere un oggetto on pochino più complicato: il menu di una pizzeria.
{ "pizzeria": "Il pappagallo rosso", "piatti": [ { "nome": "pizza margherita", "prezzo": 5.5, "ingredienti": ["pasta", "mozzarella", "pomodoro", "basilico"] }, { "nome": "pizza marinara", "prezzo": 6.5, "ingredienti": ["pasta", "mozzarella", "pomodoro", "alici", "capperi"] } ] }
In questo caso l'oggetto ha due proprietà un nome e un array (in pratica è un elenco) di piatti, a sua volta ogni singolo piatto ha un nome, un prezzo (che non ha bisogno di virgolette perché è un numero) e un elenco di ingredienti che sono dei testi.