This site is mobile accessible. Press the "Tap Here" button to use a different font-size.
Smartphone icons created by Freepik - Flaticon
18.9 JSON Server
- A common use of JSON is to exchange data to/from a web server.
- When receiving data from a web server, the data is always a string.
- Parse the data with JSON.parse(), and the data becomes a JavaScript object.
Sending Data
If you have data stored in a JavaScript object, you can convert the object into JSON, and send it to a server:
const myObj = {name: "John", age: 31, city: "New York"};
const myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;
Receiving Data
If you receive data in JSON format, you can easily convert it into a JavaScript object:
const myJSON = '{"name":"John", "age":31, "city":"New York"}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;
JSON From a Server
- You can request JSON from the server by using an AJAX request
- As long as the response from the server is written in JSON format, you can parse the string into a JavaScript object.
Use the XMLHttpRequest to get data from the server:
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
const myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.name;
};
xmlhttp.open("GET", "json_demo.txt");
xmlhttp.send();
Take a look at json_demo.txt
Array as JSON
When using the JSON.parse() on JSON derived from an array, the method will return a JavaScript array, instead of a JavaScript object.
JSON returned from a server as an array:
const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
const myArr = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myArr[0];
}
}
xmlhttp.open("GET", "json_demo_array.txt", true);
xmlhttp.send();
Take a look at json_demo_array.txt
JavaScript icons used in the buttons provided by ICONS8.COM. Smartphone icons created by Freepik - Flaticon
Example files created in this module:
JSON Syntax - Access a JavaScript object part 1
JSON Syntax - Access a JavaScript object part 2
JSON Syntax - Modify a JavaScript Object part 1
JSON Syntax - Modify a JavaScript Object part 2
JSON Parse - Parsing JSON
JSON Parse - JSON From the Server
JSON Parse - Array as JSON
JSON Parse - Parsing Dates part 1
JSON Parse - Parsing Dates part 2
JSON Parse - Parsing Dates part 3
JSON Stringify - Stringify a JavaScript Object part 1
JSON Stringify - Stringify a JavaScript Object part 2
JSON Stringify - Storing data in local storage
JSON Stringify - Stringify Dates
JSON Stringify - Stringify Functions part 1
JSON Stringify - Stringify Functions part 2
JSON Objects - Creating an Object from a JSON Literal part 1
JSON Objects - Creating an Object from a JSON Literal part 2
JSON Objects - Access a JavaScript Object part 1
JSON Objects - Access a JavaScript Object part 2
JSON Objects - Looping an Object part 1
JSON Objects - Looping an Object part 2
JSON Arrays - Create JavaScript Arrays
JSON Arrays - Create JavaScript Arrays part 2
JSON Arrays - Accessing Array Values
JSON Arrays - Accessing Array Values in Objects
JSON Arrays - Looping Through an Array
JSON Server - Sending Data to a Server
JSON Server - Receiving Data from a Server
JSON Server - JSON From a Server
JSON Server - JSON returned from a server as an array:
JSON Server - Get JSON Data from a PHP Server part 1
JSON Server - Get JSON Data from a PHP Server part 2
JSON Server - Get JSON Data from a PHP Server part 3
JSON Server - Get JSON Data from a PHP Server part 4
JSON Server - Get JSON Data from a PHP Server part 5
JSON HTML - Make a table based on JSON data
JSON JSONP - Request JSON using the script tag
JSON JSONP - Dynamic Script Tag
JSON JSONP - Callback Function