SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
Introducción a AJAX
Eduardo Ostertag Jenkins, Ph.D.
OBCOM INGENIERIA S.A. (Chile)
Eduardo.Ostertag@obcom.cl
Temario


Introducción a AJAX


Arquitectura y tecnologías









HTML + CSS
JavaScript
DOM
XMLHttpRequest

Servicios REST

Ejemplo de RIA con AJAX




Código HTML y JavaScript
Servicio REST (VB y Java)
Arquitectura típica AJAX
Browser

AJAX

Servidor Web

Servicios REST

Lógica Negocio (EJB, COM+)

Modelo de Datos (Tablas)
¿Qué es la tecnología AJAX?


AJAX (Asynchonous JavaScript and XML)



Se programa en lenguaje JavaScript



DHTML (HTML+CSS) para la interfaz



Estructura DOM (Document Object Model)



XMLHttpRequest comunicación asíncrona
¿Qué es un servicio REST?


REST (Representation State Transfer)



Como SOAP “light” – sin WSDL, UDDI, etc.



Se utilizan comandos GET/POST de HTTP



Se utilizan los códigos de retorno de HTTP



La data normalmente es XML y DHTML



Se programan en páginas HTML, JSP, PHP
Saludo AJAX: Interfaz Gráfica
Saludo AJAX: Página HTML (1)
helloHTML.html
<html>

<head>
<title>Saludos usando AJAX</title>
<script language="JavaScript">
<!—
JavaScript en próxima dispositiva 
-->
</script>
</head>
<body>
<input type="text" id="helloName" title="Ingrese su nombre"/>
<input type="submit" value="saludar" onclick="callHello(helloName.value)"/>
<p id="helloReply">No hemos enviado un saludo</p>
</body>
</html>
Saludo AJAX: Página HTML (2)
helloHTML.html
var gRequest;

// Used in callHello and helloResponse

function callHello(name)
{
var url = "helloHTML.asp?name="+encodeURIComponent(name);
if (window.XMLHttpRequest) {
// Native XMLHttpRequest
gRequest = new XMLHttpRequest();
gRequest.onreadystatechange = helloResponse;
gRequest.open("GET", url, true);
gRequest.send(null);
}
else if (window.ActiveXObject) { // Windows IE ActiveX
gRequest = new ActiveXObject("Microsoft.XMLHTTP");
gRequest.onreadystatechange = helloResponse;
gRequest.open("GET", url, true);
gRequest.send();
}
}
Saludo AJAX: Página HTML (3)
helloHTML.html
function helloResponse()
{
if (gRequest.readyState == 4)

// Only if "complete"

{
if (gRequest.status != 200)

// Check "OK" status

{
alert("Download error: "+gRequest.statusText);
return;
}
var result = gRequest.responseText;

var element = document.getElementById("helloReply");
element.innerHTML = result;
}
}
Saludo AJAX: Servicio REST
helloHTML.asp (VB)
<%@ Language="VBScript" CodePage=65001 %><%
Response.ContentType = "text/html;charset=utf-8"
Response.CodePage = 65001
Response.CacheControl = "no-cache"
%>Hola <b><%=Request.QueryString("name")%></b>. ¿Cómo estas?

helloHTML.jsp (Java)
<%@ page contentType="text/html" pageEncoding=“utf-8" %><%
request.setCharacterEncoding("utf-8");

response.addHeader("Cache-Control", "no-cache");
%>Hola <b><%=request.getParameter("name")%></b>. ¿Cómo estas?
Servicios REST y data XML






Un servicio REST puede retornar XML en vez
de retornar texto libre HTML
Esto permite que el servicio REST pueda ser
usado por otros como Flex, Java, o .NET
Todos pueden consumir data en formato XML

<?xml version="1.0" encoding="utf-8"?>

<resultado>
<saludo>¡Hola Pepe Pótamo!</saludo>
</resultado>
Saludo AJAX: Servicio REST XML
helloXML.asp (VB)
<%@ Language="VBScript" CodePage=65001 %><%
Response.ContentType = "text/xml;charset=utf-8"
Response.CodePage = 65001

Response.CacheControl = "no-cache“
nombre = Request.QueryString("name")
%><?xml version="1.0" encoding="utf-8"?>
<resultado>

<saludo>¡Hola <%=nombre%>!</saludo>
</resultado>
Saludo AJAX: Servicio REST XML
helloXML.jsp (Java)
<%@ page contentType="text/xml" pageEncoding="utf-8" %><%
request.setCharacterEncoding("utf-8");
response.addHeader("Cache-Control", "no-cache");

String nombre = request.getParameter("name");
%><?xml version="1.0" encoding="utf-8"?>
<resultado>
<saludo>¡Hola <%=nombre%>!</saludo>

</resultado>
Saludo AJAX: HTML con XML
function helloResponse()
{
if (gRequest.readyState == 4)

// Only if "complete"

{
if (gRequest.status != 200)

// Check "OK" status

{
alert("Download error: "+gRequest.statusText);
return;
}
var xmlDoc = gRequest.responseXML.documentElement;
var xmlNode = xmlDoc.getElementsByTagName("saludo")[0];
var element = document.getElementById("helloReply");

element.innerHTML = xmlNode.firstChild.data;
}
}
Comentarios sobre AJAX


Difícil programar y mantener los programas



Se recomienda usar un “Framework AJAX”




Limitado por seguridad del browser (sandbox)




Framework Backbase (www.backbase.com)

Por ejemplo, no se puede leer o grabar archivos

No permite crear clientes Semi-Conectados


No se puede guardar el estado del programa
Muchas gracias

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (12)

13. Configuracion De Aplicaciones Web Asp.Net
13.  Configuracion De Aplicaciones Web Asp.Net13.  Configuracion De Aplicaciones Web Asp.Net
13. Configuracion De Aplicaciones Web Asp.Net
 
9 Programación Web con .NET y C#
9 Programación Web con .NET y C#9 Programación Web con .NET y C#
9 Programación Web con .NET y C#
 
Ajax
AjaxAjax
Ajax
 
Jsp
JspJsp
Jsp
 
Ajax
AjaxAjax
Ajax
 
Adminredes ajax ver2
Adminredes ajax ver2Adminredes ajax ver2
Adminredes ajax ver2
 
Insert
InsertInsert
Insert
 
Objetosimpliciosjsp
ObjetosimpliciosjspObjetosimpliciosjsp
Objetosimpliciosjsp
 
ASP.NET MVC - AJAX
ASP.NET MVC - AJAXASP.NET MVC - AJAX
ASP.NET MVC - AJAX
 
Servletacceso bd
Servletacceso bdServletacceso bd
Servletacceso bd
 
ASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estadoASP.NET MVC - areas, manejo de estado
ASP.NET MVC - areas, manejo de estado
 
Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2Ajax ya temas 4-6 Equipo 2
Ajax ya temas 4-6 Equipo 2
 

Ähnlich wie Introduction AJAX

01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js IntroduccionMayer Horna
 
Introduccion Ajax V1.0
Introduccion Ajax V1.0Introduccion Ajax V1.0
Introduccion Ajax V1.0Arnulfo Gomez
 
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxIntroducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxDavid Arango
 
Ajax
AjaxAjax
Ajaxutpl
 
7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncrona7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncronaLaura Folgado Galache
 
Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Michelle Aguirre
 
Conceptos acerca de Ajax
Conceptos acerca  de AjaxConceptos acerca  de Ajax
Conceptos acerca de AjaxAlvaro Castillo
 
Introducción a JQuery
Introducción a JQueryIntroducción a JQuery
Introducción a JQueryContinuum
 
AJAX a cuerda Lo básico sobre AJAX y su funcionamiento
AJAX a cuerda
Lo básico sobre AJAX y su funcionamientoAJAX a cuerda
Lo básico sobre AJAX y su funcionamiento
AJAX a cuerda Lo básico sobre AJAX y su funcionamientoRoberto Allende
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkitpabloesp
 
Screen scraping
Screen scrapingScreen scraping
Screen scrapingThirdWay
 
CSA - Web Parts en SharePoint 2010
CSA - Web Parts en SharePoint 2010CSA - Web Parts en SharePoint 2010
CSA - Web Parts en SharePoint 2010Comunidad SharePoint
 

Ähnlich wie Introduction AJAX (20)

01 Ext Js Introduccion
01 Ext Js   Introduccion01 Ext Js   Introduccion
01 Ext Js Introduccion
 
Ajax
AjaxAjax
Ajax
 
Ajax Huancayo
Ajax HuancayoAjax Huancayo
Ajax Huancayo
 
Introduccion Ajax V1.0
Introduccion Ajax V1.0Introduccion Ajax V1.0
Introduccion Ajax V1.0
 
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: AjaxIntroducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
Introducción a los lenguajes de programación de la plataforma Web 2.0: Ajax
 
Ajax
AjaxAjax
Ajax
 
Inicios Ajax
Inicios AjaxInicios Ajax
Inicios Ajax
 
Ajax
AjaxAjax
Ajax
 
7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncrona7. Utilización de mecanismos de comunicación asíncrona
7. Utilización de mecanismos de comunicación asíncrona
 
Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2Conceptos Introductorios Del Web 2
Conceptos Introductorios Del Web 2
 
Servicios web
Servicios webServicios web
Servicios web
 
Conceptos acerca de Ajax
Conceptos acerca  de AjaxConceptos acerca  de Ajax
Conceptos acerca de Ajax
 
Introducción a JQuery
Introducción a JQueryIntroducción a JQuery
Introducción a JQuery
 
AJAX a cuerda Lo básico sobre AJAX y su funcionamiento
AJAX a cuerda
Lo básico sobre AJAX y su funcionamientoAJAX a cuerda
Lo básico sobre AJAX y su funcionamiento
AJAX a cuerda Lo básico sobre AJAX y su funcionamiento
 
Expo
ExpoExpo
Expo
 
AJAX EN CURSO PHP
AJAX EN CURSO PHPAJAX EN CURSO PHP
AJAX EN CURSO PHP
 
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control ToolkitDesarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
Desarrollo de Aplicaciones con Microsoft Ajax 1.0 y Ajax Control Toolkit
 
Ajax
AjaxAjax
Ajax
 
Screen scraping
Screen scrapingScreen scraping
Screen scraping
 
CSA - Web Parts en SharePoint 2010
CSA - Web Parts en SharePoint 2010CSA - Web Parts en SharePoint 2010
CSA - Web Parts en SharePoint 2010
 

Mehr von Aldo Ulloa Carrasco

Mehr von Aldo Ulloa Carrasco (19)

Sql wizard - OBCOM Ingenieria
Sql wizard - OBCOM IngenieriaSql wizard - OBCOM Ingenieria
Sql wizard - OBCOM Ingenieria
 
Supchilesupbrazil 131022091735-phpapp01
Supchilesupbrazil 131022091735-phpapp01Supchilesupbrazil 131022091735-phpapp01
Supchilesupbrazil 131022091735-phpapp01
 
Steve Jobs, "Stay Foolish, Stay Hungry", Stanford.-
Steve Jobs, "Stay Foolish, Stay Hungry", Stanford.-Steve Jobs, "Stay Foolish, Stay Hungry", Stanford.-
Steve Jobs, "Stay Foolish, Stay Hungry", Stanford.-
 
Ayrton Senna
Ayrton SennaAyrton Senna
Ayrton Senna
 
Quotes from Sir Ken Robinson
Quotes from Sir Ken RobinsonQuotes from Sir Ken Robinson
Quotes from Sir Ken Robinson
 
Bill Gates , Part 1.-
Bill Gates , Part 1.-Bill Gates , Part 1.-
Bill Gates , Part 1.-
 
Inside Steve Jobs Brain ,
Inside Steve Jobs Brain ,Inside Steve Jobs Brain ,
Inside Steve Jobs Brain ,
 
Java 1.4 to java 6
Java 1.4 to java 6Java 1.4 to java 6
Java 1.4 to java 6
 
10 Business Lessons
10 Business Lessons10 Business Lessons
10 Business Lessons
 
Ken Robinson, Changing Education Paradigms
Ken Robinson, Changing Education ParadigmsKen Robinson, Changing Education Paradigms
Ken Robinson, Changing Education Paradigms
 
Sir Ken Robinson, The Element
Sir Ken Robinson, The ElementSir Ken Robinson, The Element
Sir Ken Robinson, The Element
 
Arquitecturas Distribuidas. (Edo Ostertag)
Arquitecturas Distribuidas. (Edo Ostertag)Arquitecturas Distribuidas. (Edo Ostertag)
Arquitecturas Distribuidas. (Edo Ostertag)
 
03 Inspirational quotes
03 Inspirational quotes03 Inspirational quotes
03 Inspirational quotes
 
Education, Finland
Education, Finland Education, Finland
Education, Finland
 
02 Steve jobs
02 Steve jobs02 Steve jobs
02 Steve jobs
 
01 Steve Jobs, Lessons
01 Steve Jobs, Lessons01 Steve Jobs, Lessons
01 Steve Jobs, Lessons
 
01 Sir Ken Robinson, Education
01 Sir Ken Robinson, Education01 Sir Ken Robinson, Education
01 Sir Ken Robinson, Education
 
Indices2011 herramienta para una postulacion informada
Indices2011 herramienta para una postulacion informadaIndices2011 herramienta para una postulacion informada
Indices2011 herramienta para una postulacion informada
 
Buenamigoghostmusic
BuenamigoghostmusicBuenamigoghostmusic
Buenamigoghostmusic
 

Kürzlich hochgeladen

ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...JonathanCovena1
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIACarlos Campaña Montenegro
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuaDANNYISAACCARVAJALGA
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxlclcarmen
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 

Kürzlich hochgeladen (20)

ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...La empresa sostenible: Principales Características, Barreras para su Avance y...
La empresa sostenible: Principales Características, Barreras para su Avance y...
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIARAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
RAIZ CUADRADA Y CUBICA PARA NIÑOS DE PRIMARIA
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
Medición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptxMedición del Movimiento Online 2024.pptx
Medición del Movimiento Online 2024.pptx
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
cortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahuacortes de luz abril 2024 en la provincia de tungurahua
cortes de luz abril 2024 en la provincia de tungurahua
 
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptxTIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
TIPOLOGÍA TEXTUAL- EXPOSICIÓN Y ARGUMENTACIÓN.pptx
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 

Introduction AJAX

  • 1. Introducción a AJAX Eduardo Ostertag Jenkins, Ph.D. OBCOM INGENIERIA S.A. (Chile) Eduardo.Ostertag@obcom.cl
  • 2. Temario  Introducción a AJAX  Arquitectura y tecnologías       HTML + CSS JavaScript DOM XMLHttpRequest Servicios REST Ejemplo de RIA con AJAX   Código HTML y JavaScript Servicio REST (VB y Java)
  • 3. Arquitectura típica AJAX Browser AJAX Servidor Web Servicios REST Lógica Negocio (EJB, COM+) Modelo de Datos (Tablas)
  • 4. ¿Qué es la tecnología AJAX?  AJAX (Asynchonous JavaScript and XML)  Se programa en lenguaje JavaScript  DHTML (HTML+CSS) para la interfaz  Estructura DOM (Document Object Model)  XMLHttpRequest comunicación asíncrona
  • 5. ¿Qué es un servicio REST?  REST (Representation State Transfer)  Como SOAP “light” – sin WSDL, UDDI, etc.  Se utilizan comandos GET/POST de HTTP  Se utilizan los códigos de retorno de HTTP  La data normalmente es XML y DHTML  Se programan en páginas HTML, JSP, PHP
  • 7. Saludo AJAX: Página HTML (1) helloHTML.html <html> <head> <title>Saludos usando AJAX</title> <script language="JavaScript"> <!— JavaScript en próxima dispositiva  --> </script> </head> <body> <input type="text" id="helloName" title="Ingrese su nombre"/> <input type="submit" value="saludar" onclick="callHello(helloName.value)"/> <p id="helloReply">No hemos enviado un saludo</p> </body> </html>
  • 8. Saludo AJAX: Página HTML (2) helloHTML.html var gRequest; // Used in callHello and helloResponse function callHello(name) { var url = "helloHTML.asp?name="+encodeURIComponent(name); if (window.XMLHttpRequest) { // Native XMLHttpRequest gRequest = new XMLHttpRequest(); gRequest.onreadystatechange = helloResponse; gRequest.open("GET", url, true); gRequest.send(null); } else if (window.ActiveXObject) { // Windows IE ActiveX gRequest = new ActiveXObject("Microsoft.XMLHTTP"); gRequest.onreadystatechange = helloResponse; gRequest.open("GET", url, true); gRequest.send(); } }
  • 9. Saludo AJAX: Página HTML (3) helloHTML.html function helloResponse() { if (gRequest.readyState == 4) // Only if "complete" { if (gRequest.status != 200) // Check "OK" status { alert("Download error: "+gRequest.statusText); return; } var result = gRequest.responseText; var element = document.getElementById("helloReply"); element.innerHTML = result; } }
  • 10. Saludo AJAX: Servicio REST helloHTML.asp (VB) <%@ Language="VBScript" CodePage=65001 %><% Response.ContentType = "text/html;charset=utf-8" Response.CodePage = 65001 Response.CacheControl = "no-cache" %>Hola <b><%=Request.QueryString("name")%></b>. ¿Cómo estas? helloHTML.jsp (Java) <%@ page contentType="text/html" pageEncoding=“utf-8" %><% request.setCharacterEncoding("utf-8"); response.addHeader("Cache-Control", "no-cache"); %>Hola <b><%=request.getParameter("name")%></b>. ¿Cómo estas?
  • 11. Servicios REST y data XML    Un servicio REST puede retornar XML en vez de retornar texto libre HTML Esto permite que el servicio REST pueda ser usado por otros como Flex, Java, o .NET Todos pueden consumir data en formato XML <?xml version="1.0" encoding="utf-8"?> <resultado> <saludo>¡Hola Pepe Pótamo!</saludo> </resultado>
  • 12. Saludo AJAX: Servicio REST XML helloXML.asp (VB) <%@ Language="VBScript" CodePage=65001 %><% Response.ContentType = "text/xml;charset=utf-8" Response.CodePage = 65001 Response.CacheControl = "no-cache“ nombre = Request.QueryString("name") %><?xml version="1.0" encoding="utf-8"?> <resultado> <saludo>¡Hola <%=nombre%>!</saludo> </resultado>
  • 13. Saludo AJAX: Servicio REST XML helloXML.jsp (Java) <%@ page contentType="text/xml" pageEncoding="utf-8" %><% request.setCharacterEncoding("utf-8"); response.addHeader("Cache-Control", "no-cache"); String nombre = request.getParameter("name"); %><?xml version="1.0" encoding="utf-8"?> <resultado> <saludo>¡Hola <%=nombre%>!</saludo> </resultado>
  • 14. Saludo AJAX: HTML con XML function helloResponse() { if (gRequest.readyState == 4) // Only if "complete" { if (gRequest.status != 200) // Check "OK" status { alert("Download error: "+gRequest.statusText); return; } var xmlDoc = gRequest.responseXML.documentElement; var xmlNode = xmlDoc.getElementsByTagName("saludo")[0]; var element = document.getElementById("helloReply"); element.innerHTML = xmlNode.firstChild.data; } }
  • 15. Comentarios sobre AJAX  Difícil programar y mantener los programas  Se recomienda usar un “Framework AJAX”   Limitado por seguridad del browser (sandbox)   Framework Backbase (www.backbase.com) Por ejemplo, no se puede leer o grabar archivos No permite crear clientes Semi-Conectados  No se puede guardar el estado del programa