JSON-server

En vanlig användning av JSON är att utbyta data med en webbserver.

När du tar emot data från en webbserver är data alltid en sträng.

Med JSON.parse() Analysera data, data blir ett JavaScript-objekt.

Skicka Data

Om du lagrar data i ett JavaScript-objekt kan du konvertera objektet till JSON och skicka det till servern:

Exempel

const myObj = {name: "Bill", age: 31, city: "New York"};
const myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;

Prova själv

Motta Data

Om du får data i JSON-format kan du enkelt konvertera det till ett JavaScript-objekt:

Exempel

const myJSON = '{"name":"Bill", "age":31, "city":"New York"}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;

Prova själv

JSON från servern

Du kan använda AJAX-forespårgningar för att begära JSON från servern

Så länge svaret från servern är skrivet i JSON-format kan du解析字符串 till ett JavaScript-objekt.

Exempel

Använd XMLHttpRequest för att hämta data från servern:

const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myObj.name;
};
xmlhttp.open("GET", "json.txt");
xmlhttp.send();

Prova själv

Se vidare:json.txt

JSON i arrayform

Användning av JSON.parse() när denna metod returnerar JavaScript-array, inte JavaScript-objekt.

Exempel

JSON returnerad som array från servern:

const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myArr = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myArr[0];
  }
}
xmlhttp.open("GET", "json_array.txt", true);
xmlhttp.send();

Prova själv

Se vidare:json_array.txt