Gli ultimi tutorial di sviluppo web
 

JSON Richiesta HTTP


Un uso comune di JSON è quello di leggere i dati da un server web, e visualizzare i dati in una pagina web.

In questo capitolo vi insegnerà, in 4 semplici passi, come leggere i dati JSON, utilizzando XMLHttp.


JSON Esempio

Questo esempio legge un menu da myTutorials.txt , e visualizza il menu in una pagina web:

JSON Esempio

<div id="id01"></div>

<script>
var xmlhttp = new XMLHttpRequest();
var url = "myTutorials.txt";

xmlhttp.onreadystatechange = function() {
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        var myArr = JSON.parse(xmlhttp.responseText);
        myFunction(myArr);
    }
};
xmlhttp.open("GET", url, true);
xmlhttp.send();

function myFunction(arr) {
    var out = "";
    var i;
    for(i = 0; i < arr.length; i++) {
        out += '<a href="' + arr[i].url + '">' +
        arr[i].display + '</a><br>';
    }
    document.getElementById("id01").innerHTML = out;
}
</script>
Prova tu stesso "

esempio spiegato

1: Creare un array di oggetti.

Utilizzare un array letterale di dichiarare una array di objects .

Dare ad ogni oggetto due proprietà: display e url .

Nome dell'array myArray :

myArray

var myArray = [
{
"display": "JavaScript Tutorial",
"url": "http://www.w3ii.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3ii.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3ii.com/css/default.html"
}
]

2: Creare una funzione JavaScript per visualizzare la matrice.

Creare una funzione myFunction() che loop gli oggetti array, e visualizzare il contenuto come link HTML:

myFunction()

function myFunction(arr) {
    var out = "";
    var i;
    for(i = 0; i < arr.length; i++) {
        out += '<a href="' + arr[i].url + '">' + arr[i].display + '</a><br>';
    }
    document.getElementById("id01").innerHTML = out;
}

Chiamare myFunction() con myArray come argomento:

Esempio

myFunction(myArray);
Prova tu stesso "

3: Creare un file di testo

Mettere il array letterale in un file chiamato myTutorials.txt :

myTutorials.txt

[
{
"display": "JavaScript Tutorial",
"url": "http://www.w3ii.com/js/default.html"
},
{
"display": "HTML Tutorial",
"url": "http://www.w3ii.com/html/default.html"
},
{
"display": "CSS Tutorial",
"url": "http://www.w3ii.com/css/default.html"
}
]
Guardate il file »

4: Leggere il file di testo con un XMLHttpRequest

Scrivi un XMLHttpRequest per leggere il file di testo e utilizzare myFunction() per visualizzare la matrice:

XMLHttpRequest

var xmlhttp = new XMLHttpRequest();
var url = "myTutorials.txt";

xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
    var myArr = JSON.parse(xmlhttp.responseText);
    myFunction(myArr);
    }
};

xmlhttp.open("GET", url, true);
xmlhttp.send();
Prova tu stesso "