Последние учебники веб-разработки
 

JSON Http Request


Обычное использование JSON является для чтения данных с веб-сервера, а также отображать данные в веб-страницы.

Эта глава научит вас, в 4 простых шага, как читать данные в формате JSON, используя XMLHttp.


Пример JSON

Этот пример читает меню из myTutorials.txt , и отображает меню на веб - странице:

Пример JSON

<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>
Попробуй сам "

Пример Разъяснения

1: Создать массив объектов.

Используйте массив буквальный , чтобы объявить array из objects .

Дайте каждому объекту два свойства: display и url .

Назовите массив 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: Создание функции JavaScript для отображения массива.

Создайте функцию myFunction() , что петли объекты массива, а также отображать содержимое в виде 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;
}

Вызов myFunction() с myArray в качестве аргумента:

пример

myFunction(myArray);
Попробуй сам "

3: Создайте текстовый файл

Поместите литерал массива в файле с именем 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"
}
]
Посмотрите на файл »

4: Прочитайте текстовый файл с XMLHttpRequest

Напишите XMLHttpRequest для чтения текстового файла, и использовать myFunction() для отображения массива:

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();
Попробуй сам "