Formats d'intercanvi d'informació. JSON

De Wikijoan
Revisió de 16:27, 19 feb 2019; Joan (Discussió | contribucions)
(dif) ←Versió més antiga | Versió actual (dif) | Versió més nova→ (dif)
Dreceres ràpides: navegació, cerca

Contingut

Introducció

Referències

AJAX i JSON

exemple nadiu vist a classe: (fitxer javascriptkit.html i javascriptkit.json)

exemple JQuery:

En el següent enllaç podem veure que els fitxers XML es poden traduir a sintaxi JSON. Tanmateix, quan els fitxers XML es compliquen, el seu equivalent JSON passa a ser bastant difícil de llegir i interpretar.

Com a regla general, podem fer servir JSON quan la informació que volem emmagatzemar i parsejar sigui fàcil d'interpretar.

Teoria

A classe s'han vist els anteriors enllaços i s'han explicat i provat els exemplest continguts. Es dóna especial ènfasi a utilitzar JSON en l'intercanvi d'informació entre el client i el servidor en les crides asíncrones AJAX, que és del que s'ocupa l'actual Unitat Formativa.

Els següents trossos de codi són especialment rellevants:

Conversió d'un objecte PHP a JSON

<?php
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";

$myJSON = json_encode($myObj);

echo $myJSON;
?>

Conversió de la cadena JSON (objecte) a objecte Javascript

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myObj = JSON.parse(this.responseText);
    document.getElementById("demo").innerHTML = myObj.name;
  }
};
xmlhttp.open("GET", "demo_file.php", true);
xmlhttp.send();

Conversió d'un array PHP a JSON

<?php
$myArr = array("John", "Mary", "Peter", "Sally");

$myJSON = json_encode($myArr);

echo $myJSON;
?>

Conversió de la cadena JSON (array) a array Javascript

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myObj = JSON.parse(this.responseText);
    document.getElementById("demo").innerHTML = myObj[2];
  }
};
xmlhttp.open("GET", "demo_file_array.php", true);
xmlhttp.send();

creat per Joan Quintana Compte, febrer 2019

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
Institut Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines