<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
	<id>https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Gestionando_las_respuestas_del_servidor</id>
	<title>Gestionando las respuestas del servidor - Historial de revisiones</title>
	<link rel="self" type="application/atom+xml" href="https://manuais.iessanclemente.net/index.php?action=history&amp;feed=atom&amp;title=Gestionando_las_respuestas_del_servidor"/>
	<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Gestionando_las_respuestas_del_servidor&amp;action=history"/>
	<updated>2026-10-21T05:10:49Z</updated>
	<subtitle>Historial de revisiones de esta página en la wiki</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://manuais.iessanclemente.net/index.php?title=Gestionando_las_respuestas_del_servidor&amp;diff=3645&amp;oldid=prev</id>
		<title>Veiga: Nueva página: Hemos realizado la solicitud, nuestro cliente está trabajando en el formulario (mientras el servidor gestiona la respuesta), y ahora el servidor termina la ejecución.   El servidor ...</title>
		<link rel="alternate" type="text/html" href="https://manuais.iessanclemente.net/index.php?title=Gestionando_las_respuestas_del_servidor&amp;diff=3645&amp;oldid=prev"/>
		<updated>2008-01-24T00:15:21Z</updated>

		<summary type="html">&lt;p&gt;Nueva página: Hemos realizado la solicitud, nuestro cliente está trabajando en el formulario (mientras el servidor gestiona la respuesta), y ahora el servidor termina la ejecución.   El servidor ...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Página nueva&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Hemos realizado la solicitud, nuestro cliente está trabajando en el formulario (mientras el servidor gestiona la respuesta), y ahora el servidor termina la ejecución. &lt;br /&gt;
&lt;br /&gt;
El servidor entonces comprueba la propiedad &amp;#039;&amp;#039;&amp;#039;onreadystatechange&amp;#039;&amp;#039;&amp;#039; y ve cual es el &amp;#039;&amp;#039;&amp;#039;método que tiene que invocar&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Una vez que ésto ocurre, podemos pensar en nuestra aplicación como otra aplicación asíncrona o no.&lt;br /&gt;
&lt;br /&gt;
En otras palabras, no tenemos que realizar ninguna acción especial para escribir métodos que respondan a esa respuesta proveniente del servidor; simplemente modificaremos el formulario, o llevaremos al cliente a otra dirección URL o haremos lo que nos haga falta según la respuesta del servidor.&lt;br /&gt;
&lt;br /&gt;
En este caso programaremos que se cambia una parte del formulario.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Respuestas y Ajax ==&lt;br /&gt;
&lt;br /&gt;
Hemos visto cómo indicarle al servidor qué hacer cuando termina la solicitud: &amp;#039;&amp;#039;&amp;#039;hemos puesto en la propiedad onreadystatechange del objeto XMLHttpRequest la función que debe ejecutar cuando termine de buscar la respuesta&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Entonces cuando el servidor ha procesado la respuesta, automáticamente llamará a esa función. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Véase el listado 11.&lt;br /&gt;
&lt;br /&gt;
== Listado 11. Código para gestionar la respuesta ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;script language=&amp;quot;javascript&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;
   var request = false;&lt;br /&gt;
   try {&lt;br /&gt;
     request = new XMLHttpRequest();&lt;br /&gt;
   } catch (trymicrosoft) {&lt;br /&gt;
     try {&lt;br /&gt;
       request = new ActiveXObject(&amp;quot;Msxml2.XMLHTTP&amp;quot;);&lt;br /&gt;
     } catch (othermicrosoft) {&lt;br /&gt;
       try {&lt;br /&gt;
         request = new ActiveXObject(&amp;quot;Microsoft.XMLHTTP&amp;quot;);&lt;br /&gt;
       } catch (failed) {&lt;br /&gt;
         request = false;&lt;br /&gt;
       }  &lt;br /&gt;
     }&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   if (!request)&lt;br /&gt;
     alert(&amp;quot;Error inicializando XMLHttpRequest!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
      function obtenerInfoCliente() {&lt;br /&gt;
     var phone = document.getElementById(&amp;quot;phone&amp;quot;).value;&lt;br /&gt;
     var url = &amp;quot;buscarcliente.php?phone=&amp;quot; + escape(phone);&lt;br /&gt;
     request.open(&amp;quot;GET&amp;quot;, url, true);&lt;br /&gt;
     request.onreadystatechange = actualizarPagina;&lt;br /&gt;
     request.send(null);&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
  function actualizarPagina() {&lt;br /&gt;
     alert(&amp;quot;El servidor ha terminado la consulta en la pagina php.!&amp;quot;);&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En este caso simplemente cuando termina la ejecución de dicha página php nos informará mediante una alerta.&lt;br /&gt;
&lt;br /&gt;
Si ejecutamos este código veremos que cuando introducimos un teléfono y nos vamos a otro campo nos aparecerá ese mensaje de alerta una y otra vez.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Figura 3. Código mostrando la alerta. ==&lt;br /&gt;
&lt;br /&gt;
[[Imagen:Ajax-3.jpg]]&lt;br /&gt;
&lt;br /&gt;
Dependiendo del navegador, obtendremos 2, 3 o incluso 4 alertas. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;¿Entonces, qué esta ocurriendo?&amp;#039;&amp;#039;&amp;#039; Pues tiene que ver con el ciclo de solicitud/respuesta de HTTP.&lt;/div&gt;</summary>
		<author><name>Veiga</name></author>
	</entry>
</feed>