AOWS

Just another adrian’s weblog

Primeros pasos con JSON

leave a comment »

Estos días me he encontrado con un bug en jQuery, por culpa del cual no era posible parsear correctamente una respuesta en XML en Internet Explorer. Para solucionarlo, eché mano de un formato que últimamente está dando mucho que hablar: JSON.

JSON (JavaScript Object Notation) – Notación de Objetos de JavaScript) es un formato ligero de intercambio de datos. Leerlo y escribirlo es simple para humanos, mientras que para las máquinas es simple interpretarlo y generarlo. Está basado en un subconjunto del Lenguaje de Programación JavaScript.

JSON es una gran alternativa a XML como formato de intercambio de información, con ventajas sobre este último más notables por ejemplo en peticiones Ajax.

Un objeto JSON tiene una estructura de pares (propiedadvalor) como la que sigue:

[javascript]
var objeto = {
propiedad: valor,

propiedadN: valorN
}
[/javascript]

¿Cómo lo usamos en nuestra aplicación? En mi caso el código es generado por un script PHP, para el resultado de una consulta que devuelve dos campos:

[php]
$query = “SELECT campo1, campo2 FROM tabla WHERE condicion=$condicion”;
$query = mysql_query($query);

if ($results = mysql_fetch_array($query)) {
echo ‘var resultado = {‘;
echo ‘ campo1: “‘ .$results[‘campo1’]. ‘”,’;
echo ‘ campo2: “‘ .$results[‘campo2’]. ‘”‘;
echo ‘}’;
}
[/php]

Este script nos devolvería un código como el que sigue:

[javascript]
var resultado = {
campo1: “valor del campo1”,
campo2: “valor del campo2”
}
[/javascript]

Para utilizarlo en nuestro JavaScript hacemos uso de la función eval (en el ejemplo se hace la petición con jQuery):

[javascript]
$.post(“http://ejemplo.com/script_json.php”,
function(data) {
eval(data);
alert(‘campo1: ‘ + resultado.campo1);
});
[/javascript]

resultando todo incluso más sencillo que con XML.

Un tutorial más completo: Parsear JSON con jQuery y JavaScript

Written by adrian

17 octubre, 2007 a 17:11

Publicado en Posts

Tagged with , , , , ,

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: