Science Library - free educational site

JSON and AJAX

AJAX

Asynchronous JavaScript and XML: AJAX is a JavaScript technique for making HTTP requests without reloading a page.

AJAX is not a programme, like PHP or Javascript, but a formalised scripting procedure for enabling information on a webpage to be updated without the need to reload the page. This allows for faster and smoother operations, and less user inconvenience.

One data format that makes AJAX more effective is JSON.

JSON

JSON, or JavaScript Object Notation, is an open format for transferring data. It derives from the JavaScript language and is a popular alternative to XML because it's lightweight and easily human-readable.

Here's what it might look like:

  • {
  • "name": "John",
  • "surname": "Smith",
  • "age": 42,
  • "address": "Dent Street, Gallifrey",
  • "postal code": "6900",
  • "tags": ["time", "traveller"]
  • }

As you can see, JSON is based on a series of name-value pairs, and if you know JavaScript, you will no doubt see how similar the notation is.

Using JSON with AJAX

One common application for JSON on the internet is as a data format for AJAX (ironically, Asynchronous Javascript And Xml).

Suppose we already have a function AJAX that uses the XMLHttp object to make an AJAX request to the specified page sending any data and then calling a callback function, passing it the server's response.

If the response text is encoded in JSON, we can simply make it into an object using the eval function:

AJAX({"url": 'example.php', "data": 'params=value', function(r) {
var responseObj = eval(r.text);
}});

The eval function evaluates the string as code, and, because JSON is valid JavaScript syntax, will return an object with the data from the server.

Because it is so popular, many other programming languages have native functions to encode and decode JSON. PHP, for instance, has the json_encode and json_decode functions, which will return a string with the JSON equivalent of a passed object, and vice versa.

! Beware !

Be careful when applying the eval function to a string of unknown or untrusted origin. Hackers may try to inject malicious code into your page, and this is a massive security breach. I personally never use this function unless I wrote the script myself.

Sean Bone

ZumGuy Network webmaster

Visit my Internet forum: ZumGuy Internet Forum

Per una versione di quest'articolo in Italiano vedi: JSON

Translation by Transalpine Technical Translations.

Content © Andrew Bone. All rights reserved. Created : February 2, 2014 Last updated :February 14, 2016

Latest Item on Science Library:

The most recent article is:

Fission

View this item in the topic:

Nuclear and Particle Physics

and many more articles in the subject:

Subject of the Week

Environment

Environmental Science is the most important of all sciences. As the world enters a phase of climate change, unprecedented biodiversity loss, pollution and human population growth, the management of our environment is vital for our futures. Learn about Environmental Science on ScienceLibrary.info.

Environmental Science

Great Scientists

William Herschel

1738 - 1822

William Herschel is one of the most famous of all astronomers, best remembered for his discovery of Uranus in 1781.

William Herschel
Rewewable Media

Quote of the day...

"You think the universe can’t be expanding?" Sean asked the clown-professor, Einstein.
"You don't zink an infinite universe ist big enough already? You want more zan infinite? You greedy."

ZumGuy Internet Promotions

Transalpine traduzioni