Rogelio Ferreira Escutia. 2 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Término AJAX  El término AJAX se presentó.

Slides:



Advertisements
Presentaciones similares
Introducción a la programación (Clase 2)
Advertisements

JavaScript Rogelio Ferreira Escutia. 2 JavaScript Wikipedia, noviembre 2009http://es.wikipedia.org/wiki/Javascript.
1 Curso Básico de C.I.O. Light Sección 12 Internet Sección 12 - Internet.
Internet y tecnologías web
Asynchronous JavaScript and XML. Esta clase sirve para ser utilizado cuando lo único que queremos hacer es actualizar cierta parte de un sitio Web continuamente.
Scripting en el lado del Cliente
AJAX Web 2.0
Juan Fernández Rodríguez
Herramientas para el uso de AJAX
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:23 PRESENTACION: BASE DE DATOS ALUMNAS: Velazquez Corona Elsa Ponciano Antonio.
CURSO DE INTERNET TEMA 3. LOS NAVEGADORES.
Aplicación informática. formando parte de una red. pone sus recursos a disposición de las demás computadoras(clientes) de la red. Maneja información.
Asynchronous JavaScript and XML.  No es una nueva forma de programar, es una forma de utilizar los estándares disponibles.  Es el arte de intercambiar.
"java del lado del servidor" Servlet y JSP Java Server Pages.
El mecanismo básico de interacción entre el usuario y un sitio web esta dado por el uso de formularios html. El server envía un formulario que el browser.
Características generales de un servicio Web.
Mecanismo de petición y respuesta Prof. Manuel Blázquez Ochando
TECNOLOGÍA IDC Internet Database Connector Trinitario Gómez López.
Taller 5: Trabajo con Plantillas y uso de tecnología Ajax.
Tecnologías para el desarrollo de aplicaciones Web
ADMINISTRACION DE REDES SECUNECIA DE COMANDOS EN SITIOS CRUZADOS(XSS) DIEGO ALEXANDER MADRID DUQUE GABRIEL ANDRES AGUIRRE JARAMILLO INSTITUTO TECNOLOGICO.
Ingeniero Anyelo Quintero
TUTORIAL M.A. Fabiola Suseth López Aguirre Espacio Educativo NTIC Universidad de Sonora Septiembre de 2013.
Una java servlet es un programa que se ejecuta en un servidor. Por lo general son aplicaciones Java que corren en un entorno de servidor web. Los Java.
Diseño de una base de datos Zavaleta Nolasco Karina
SISTEMAS OPERATIVOS EN LOS QUE FUNCIONA
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
PHP TODO SOBRE PHP.
Prof. José T. Cadenas. Aplicación Web La Internet y la Web hacen que sea fácil y atractivo poner toda la información en el cyberespacio, y la hace accesible.
PRESENTA: ALICIA GONZÁLEZ INSTALACIÓN DE COMPONENTES EN JAVA.
AJAX Daniel Montenegro Cordero Ingeniería de Sistemas y Computación Pontificia Universidad Javeriana - Cali.
PROTOCOLO H T T P.
Por: Jorge Aguirre PUERTOS DE UN SERVIDOR WEB.  Un servidor web o servidor HTTP es un programa informático que procesa una aplicación del lado del servidor.
3. Espacios de trabajo. Manual de formación 2 3. Espacios de trabajo 3.1 Introducción … ……pág.45.
INTRODUCCIÓN A AJAX. ¿Qué es AJAX? Acrónimo de Asynchronous JavaScript And XML No es ninguna tecnología, ni lenguaje de programación. Es una técnica de.
“SERVLETS”. Paola Rojas Contreras Juan Villarroel Leiva José Miguel Perez V. Departamento de Electrónica.
Unidad didáctica 6 Diseño de páginas Web.
Ajax en 3 Capas Ing. Pedro Luis Rodriguez. El Cliente/Servidor WEB Cliente: Navegador WEB. Internet Explorer, Mozilla FireFox Cliente: Navegador WEB.
NAVEGADOR.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
Ihr Logo PHP Parte 4 “manejo de formularios”. Your Logo Formularios  El proceso para el manejo de FORMULARIOS html requiere generalmente dos páginas,
      Protocolo de transferencia de Hipertexto, empleado para acceder a documentos de hipermedia  El protocolo nació en el CERN, como base.
Los siguientes términos y acrónimos son un resumen de las tecnologías web actuales: ASP (Active Server Pages)  Páginas de servidor activas.  Tecnología.
Gabriel Montañés León. RSS es el acrónimo de Really Simple Sindication (Sindicación Realmente Simple). Es un formato basado en el lenguaje XML que permite.
Servidores web. Integrantes: Dany Alexander Orozco. Maycol Gómez Herrera. Luisa Fernanda Moncada.
Introducción al Lenguaje. ¿ Qué es PHP ? O Hypertext Pre-processoes (PHP) es un lenguaje de "código abierto" interpretado, de alto nivel, embebido en.
COLEGIO DE BACHILLERES PLANTEL 13 XOCHIMILCO-TEPEPAN MATERIA:TIC EQUIPO:21 PRESENTACION: BASE DE DATOS ALUMNAS: Adán Millán Sánchez.
 Claudia Jordan Idrovo.  Son los puntos de enganche para cada conexión de red que realizamos. El protocolo TCP (el utilizado en internet) identifica.
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Autores: Alejandro Teixeira Alexander Parra SOCIEDAD Y INTERNET HTML V.5 ACTIONSCRIPTAJAX HERRAMIENTAS WEB 2.0.
¿QUE SON LAS ACTUALIZACIONES?  Las actualizaciones son adiciones al software que pueden evitar problemas o corregirlos, mejorar el funcionamiento del.
Introducción WWW y estándares web Jesús Torres Cejudo.
- Parámetros de apariencia y uso Luis Villalta Márquez.
File Transfer Protocol.
APACHE WEB SERVER El proyecto Apache Web Server es un desarrollo de software en colaboración, enfocado en crear una implementación de un servidor HTTP.
Pablo Barrantes Illary Huaylupo David Navas Alan Wong.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
Manual PHP Básico Camilo Cartagena.
AJAX Asynchronous JavaScript And XML.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
¿Qué es jQuery? jQuery es una librería gratuita y open source, que simplifica la creación de páginas web altamente interactivas. Funciona.
 Es un lenguaje de programación interpretado, es decir, que no requiere compilación, utilizado principalmente en páginas web, con una sintaxis semejante.
Servicios Web Conjunto de aplicaciones o de tecnologías con capacidad para interoperar en la Web. Estas aplicaciones o tecnologías intercambian datos entre.
Planificación Curso UNIDAD 1. INTRODUCCIÓN A LOS SERVICIOS EN RED UNIDAD 2. SERVICIOS DHCP UNIDAD 3. SERVICIOS DNS UNIDAD 4. SERVICIOS DE ACCESO REMOTO.
Java Script. Como habilitar JavaScript en tu navegador
1/11Departamento de Informática Tributaria AJAX Fundamentos básicos ( ) AJAX Fundamentos básicos ( )
Conociendo el modelo Cliente-Servidor
Aplicaciones Web Verano Programación de aplicaciones Web FCC-BUAP Verano 2016BMB - RAM2.
Ajax (ASYNCHRONOUS JAVASCRIPT AND XML)
Introducción a AJAX.
Transcripción de la presentación:

Rogelio Ferreira Escutia

2 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Término AJAX  El término AJAX se presentó por primera vez en el artículo "Ajax: A New Approach to Web Applications ( s/essays/archives/ php) " publicado por Jesse James Garrett el 18 de Febrero de  Hasta ese momento, no existía un término normalizado que hiciera referencia a un nuevo tipo de aplicación web que estaba apareciendo.  En realidad, el término AJAX es un acrónimo de Asynchronous JavaScript + XML, que se puede traducir como "JavaScript asíncrono + XML".

3 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Tecnologías AJAX  Ajax no es una tecnología en sí mismo, en realidad, se trata de varias tecnologías independientes que se unen de formas nuevas y sorprendentes.  Las tecnologías que forman AJAX son: – XHTML y CSS, para crear una presentación basada en estándares. – DOM, para la interacción y manipulación dinámica de la presentación. – XML, XSLT y JSON, para el intercambio y la manipulación de información. – XMLHttpRequest, para el intercambio asíncrono de información. – JavaScript, para unir todas las demás tecnologías.

4 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Tecnologías AJAX

5 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modelo Web Clásico  En las aplicaciones web tradicionales, las acciones del usuario en la página (pinchar en un botón, seleccionar un valor de una lista, etc.) desencadenan llamadas al servidor. Una vez procesada la petición del usuario, el servidor devuelve una nueva página HTML al navegador del usuario.  Esta técnica tradicional para crear aplicaciones web funciona correctamente, pero no crea una buena sensación al usuario. Al realizar peticiones continuas al servidor, el usuario debe esperar a que se recargue la página con los cambios solicitados. Si la aplicación debe realizar peticiones continuas, su uso se convierte en algo molesto

6 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modelo Web Clásico

7 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modelo AJAX  AJAX permite mejorar completamente la interacción del usuario con la aplicación, evitando las recargas constantes de la página, ya que el intercambio de información con el servidor se produce en un segundo plano.  Las aplicaciones construidas con AJAX eliminan la recarga constante de páginas mediante la creación de un elemento intermedio entre el usuario y el servidor. La nueva capa intermedia de AJAX mejora la respuesta de la aplicación, ya que el usuario nunca se encuentra con una ventana del navegador vacía esperando la respuesta del servidor.

8 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modelo AJAX

9 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modelos

10 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Objeto XMLHttp  El objeto “XMLHttp” es el corazón de toda aplicación AJAX, dado que es el que técnicamente permite realizar una petición con el servidor en forma asincrónica y sin cambiar de URL.

11 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Remote Scripting de Microsoft  En 1998 Microsoft liberó una tecnología conocida como “Remote Scripting”, que permitía por medio de applet Java, realizar peticiones desde JavaScript al servidor sin que el ususario lo note ni se cambie de URL del sitio web, mientras se hace esperar al usuario. 1998) Primera versión

12 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 ActiveX de Microsoft  En 1999 Microsoft lanzó el Internet Explorer 5.0 y ahí incorporó, bajo la tecnología ActiveX, un objeto llamado XMLHttp que reemplazaba funcionalmente al applet Java de la anterior implementación de Microsoft.  De esta manera, era posible utilizar esta tecnología anteriormente conocida como “Remote Scripting” sin necesidad de que el usuario tenga instalada una máquina virtual de Java, lo que además aumentaba la velocidad de las aplicaciones de este tipo. 1999) Segunda versión

13 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 XMLHttp de Google  En el 2004, algunas empresas lideradas por Google retomaron el concepto de ActiveX y desarrollaron su propia versión para aplicarlo en sitios web, con lo que se pudieron realizar aplicaciones nuevas en HTML como el manejo de mapas.  Google logró que esta tecnología se hiciera conocida y muchos otros desarrolladores quisieron implementarla, dando nacimiento al concepto de AJAX. 2004) Tercera versión

14 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Modo de Uso  Para hacer una petición AJAX es necesario realizar los siguientes pasos: – 1) Instanciar el objeto. – 2) Configurar y abrir la petición. – 3) Definir una función de JavaScript que se encargue de administrar la evolución de la petición. – 4) Enviar la petición y los datos al servidor. – 5) En la función definida antes, manipular el estado de la petición, y en el caso correcto, recibir los datos y actuar en consecuencia con ellos.

15 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Internet Explorer objeto = new ActiveXObject(“nombreClase”); IE7+, Firefox, Chrome, Opera, Safari objeto = new XMLHttpRequestect(); 1) Instanciar el objeto

16 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Para cualquier navegador if (window.XMLHttpRequest) { // codigo para IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else { // codigo para IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } 1) Instanciar el objeto

17 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Método “open” 2) Configurar y abrir la petición  El método “open” no abre la conexión con el servidor, sino que sólo configura la petición y la deja lista para enviarla y su codificación es: peticion.open(GET, “url”, true);

18 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Método “send” 4) Enviar la petición y los datos al servidor  El método “send” se encarga de enviar una petición al servidor una vez que se configuró el método open. Se pueden enviar datos vía POST o se puede usar el valor “null” si los envíos de datos son vía GET y se incluye el parámetro en la petición a la URL. peticion.send(null);

19 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Métodos mas utilizados openConfigura la conexión (no abre la conexión) sendEnviar una petición al servidor abortAbortar un petición en curso readyStateAdministrar el estado de la conexión statusDevuelve el código HTTP que nos devuelve el servidor startusTextDevuelve un texto descriptivo del resultado del método "status" responseTextDevuelve una cadena con el contenido del cuerpo devuelto por el servidor anta la petición responseXMLRecibe el objeto XML nativo en JavaScript y luego procesarlo por los métodos del DOM onreadystatechangeDefine la función que se ejecutará cuando se produzca un evento 5) Administración de la petición

20 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 Método “abort” 5) Administración de la petición  El método “abort” se encarga de abortar una petición en curso, luego de haber invocado al método “send”.  Abortar implica que ya no se nos avisará cuando lleguen los datos y en el navegador se suspenderán todas las acciones que se estaban utilizando para enviar datos al servidor y recibirlos. peticion.abort();

21 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 “status” 5) Administración de la petición  La propiedad “status” devuelve el código HTTP que nos devolvió el servidor.  Estos códigos nunca se administraron en la web 1.0 aunque los usuarios los conocen, como cuando se trata de accesar una página que no existe (error 404, recurso no encontrado).  Si recibimos un error del servidor por una petición AJAX, el navegador no mostrará nada al usuario, por lo que es nuestra responsabilidad el procesamiento de estos errores.

22 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 “readyState” 5) Administración de la petición  Nos sirve para monitorear el estado de la petición y nos regresa un código numérico entre 0 y 4. CódigoEstadoDescripción 0Sin inicializarEl requerimiento sólo fué instanciado 1CargandoEl requerimiento se configuró (con open) pero todavía no se envió. 2CargandoEl requerimiento se envió o se está enviando, aunque todavía no tenemos respuesta alguna del servidor 3InteractivoEl servidor ya respondió la petición, ya tenemos disponibles las cabeceras pero el contenido todavía se está descargando 4CompletoLa petición ya finalizó y el contenido está completo

23 “Introducción a AJAX”, Javier Eguíluz Pérez, mayo 2010 “status” 5) Administración de la petición  Algunos de los códigos de “status” mas usados son: CódigoDescripción 200La petición se pudo procesar en forma correcta. 404La URL que invocamos no existe en el servidor. 500Error interno del servidor. Puede indicarnos que el servidor está saturado o que hay algún error en el script ejecutado en el servidor. 400La petición enviada al servidor es errónea. Hay algún inconveniente con las cabeceras o con la información POST enviada. 403No tenemos permiso de acceder al recurso en el servidor. 405No se acepta el método. Hay un problema al definir los métodos POST ó GET. 414La URL pedida es muy larga. Puede producirse cuando se envían muchos datos por GET. En este caso, se debe cambiar el método a POST. 503El servidor está temporalmente no disponible.

24 Ejemplo 1: Búsqueda de Artículos en un catálogo  Por medio de una lista desplegable se selecciona un artículo:

25 Ejemplo 1: Búsqueda de Artículos en un catálogo  Por medio de AJAX se hace una petición al servidor para buscar el artículo y después imprimirlo en pantalla:

26 Ejemplo 1: Búsqueda de Artículos en un catálogo  Hacemos un formulario con una lista desplegable, en caso de algún cambio (onchange) se ejecuta la función “showUser”: Selecciona un articulo: Coca Cola Pepsi Cola

27 Ejemplo 1: Búsqueda de Artículos en un catálogo  Iniciamos el código de nuestra función, primero verificando que la lista desplegable de nuestro formulario no nos haya enviado un caracter nulo(“”), si es así regresamos nuevamente al formulario: function showUser(str) { if (str=="") { document.getElementById("txtHint").innerHTML=""; return; }

28 Ejemplo 1: Búsqueda de Artículos en un catálogo  Inicializamos nuestro objeto HttpRequest, dependiendo si es de tipo Microsoft Explorer o es de tipo estándar: if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); }

29 Ejemplo 1: Búsqueda de Artículos en un catálogo  Preparamos nuestra conexión, y cuando esté terminada nuestra petición (4) y se haya procesado de manera completa (200), entonces actualizamos el objeto “texto_ajax” con la respuesta de la petición al servidor: xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("texto_ajax").innerHTML=xmlhttp.responseText; }

30 Ejemplo 1: Búsqueda de Artículos en un catálogo  Ahora preparamos la conexión, especificando el tipo de envío (GET), la página a que hacemos la petición (catalogo.php) y el parámetro que le vamos a enviar (articulo= ….). Por último hacemos la petición al servidor (send) xmlhttp.open("GET","catalogo.php?articulo="+str,true); xmlhttp.send(); }

31 Ejemplo 1: Búsqueda de Artículos en un catálogo  Cliente Mostrar articulos con AJAX function showUser(str) { if (str=="") { document.getElementById("txtHint").innerHTML=""; return; } 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("texto_ajax").innerHTML=xmlhttp.responseText; } xmlhttp.open("GET","catalogo.php?articulo="+str,true); xmlhttp.send(); } Selecciona un articulo: Coca Cola Pepsi Cola Aqui se mostrara la informacion del producto.

32 Ejemplo 1: Búsqueda de Artículos en un catálogo  Servidor Mostrar catalogo con imagenes <?PHP $servidor="localhost"; $usuario="root"; $clave=""; $conexion = mysql_connect($servidor, $usuario, $clave); if (!$conexion) { echo " Error al establecer conexión con el servidor!!! "; exit; } if (!mysql_select_db("tiendita_catalogo",$conexion)) { echo " Error al seleccionar la base de datos!!!"; exit; } $sql = "select * from catalogo"; $resultado=mysql_query ($sql,$conexion); echo " "; while($renglon = mysql_fetch_array($resultado)) { echo " "; echo " ". $renglon['articulo']. " "; echo " ". $renglon['precio']. " "; echo " ". $renglon['cantidad']. " "; echo " "; } echo " "; mysql_close($conexion); ?>