Professional Documents
Culture Documents
ndice
1 | Introduccin
Ejemplo
2.4 | XML vs JSON
8
9
Ajax | TELEFNICA // 3
1. Introduccin
AJAX se present por vez primera en el artculo Ajax: A New Approach to
Web Applications de Jesse James Garrett en 2005. Anteriormente no exista
un trmino que hiciera referencia a un tipo nuevo de programacin web que
estaba surgiendo.
Realmente, el trmino AJAX es un acrnimo (Asynchronous
JavaScript + XML).
El artculo define AJAX de la siguiente forma:
Ajax | TELEFNICA // 4
XHTML
CSS
XML
XMLHttpRequest
DOM
unin
de
todas
JSON
JAVASCRIPT
Ajax | TELEFNICA // 5
Browser Client
user interface
Browser Client
user interface
JavaScript
call
HTTP request
HTTP(s)
transport
HTTP + CSS data
web server
datastores,
backend
processing, legacy
systems
server-side systems
CLASSIC WEB APPLICATION MODEL
HTML+CSS
data
Ajax engine
HTTP request
HTTP(s)
transport
XML data
Ajax | TELEFNICA // 6
Pgina web
Motor Ajax
XMLHTTPRequest
Gestor de evento
Actualizar la pgina
Crear peticin al
servidor
Servidor
Enviar
Peticin
Monitorizar
Estatus
Informa Estado
Obtener respuesta
Respuesta
Procesar datos
devueltos
Ajax | TELEFNICA // 7
Descripcin
Onereadystaetchange
Determina qu funcin ser llamada cuando la propiedad readyState del objeto cambie
readyState
responseText
responseXML
Status
Abort()
getAllResponseHeaders()
getResponseHeaader(x)
Open(Method, URL,a)
Especifica el mtodo HTTP (por ejemplo, GET o POST9, la UR objetivo y si la peticin debe ser
manejada asncronamente (Si, a=True defecto;No, a=false.)
Send (content)
Enva la peticin
setRequestHeader( label,Value)
Configura un parmetro y valor label=value y lo asigna a la cabecera para ser enviado con la
peticin.
Ajax | TELEFNICA // 8
Ejemplo
A continuacin vamos a ver un pequeo
ejemplo prctico, con una peticin GET al
servidor para conseguir un fichero llamado
ajax.txt.
<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject(Microsoft.XMLHTTP);
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById(myDiv).innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open(GET,ajax.txt,true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id=myDiv><h2>Let AJAX change this text</h2></div>
<button type=button onclick=loadXMLDoc()>Change Content</button>
</body>
</html>
Ajax | TELEFNICA // 9