Laboratorio 6 AJAX
Laboratorio #6: AJAX
AJAX
AJAX, JavaScript asíncrono y XML por sí mismo no resulta ser una tecnología,
sino el uso de distintas tecnologías ya existentes de un modo nuevo. Las
tecnologías que se suelen utilizar (si bien no son todas) incluyen: HTML o
XHTML, CSS, JavaScript, DOM, XML, JSON, y el objeto XMLHttpRequest, que
veremos posteriormente. Al combinar estas tecnologíasen un modelo AJAX es
posible lograr aplicaciones web capaces de actualizarse constantemente sin la
necesidad de recargar la página completa. Es evidente que el realizar esto
produce aplicaciones más rápidas a nivel de carga, dada la inmediata
reducción de carga de red, y mejor respuesta a las acciones del usuario. [1]
El uso del término asíncrono dentro de la denominación de AJAX suele
tomarseliteralmente siendo el mismo no del todo correcto. Si bien se produce
dicha percepción al interactuar con la aplicación dada la carga de nuevos
elementos sin realizar una recarga de la web, la misma no es en realidad una
interacción asíncrona.
Al realizar una interacción mediante AJAX se realiza una petición Http y esta
debe ser respondida, de manera idéntica a como se realiza con una petición
que noutilice AJAX. Para realizar las modificaciones sobre la vista en la
aplicación se debe esperar igualmente por la respuesta del servidor.
Tomando en cuenta lo anterior se puede observar que el término asíncrono no
resulta del todo adecuado para describir la interacción AJAX, dado que es una
ilusión de asincronía, más no una realidad. Un término más adecuado para
esta interacción podría ser que serealizan interacciones de fondo o en
background con el servidor, pero estas en realidad, siguen siendo síncronas.
Inconvenientes
1. En navegadores pre-HTML5, aplicaciones creadas utilizando solicitudes
AJAX sucesivas no eran almacenadas por el motor de historial del
navegador, por lo cual presionar el botón de “Atrás” del navegador
puede no retornar al usuario a un estado anterior de laaplicación
habilitada con AJAX, sino a la última página completa visitada por el
usuario. Dicho comportamiento, navegar por distintas páginas en lugar
de distintos estados de una aplicación, puede ser deseable, pero si un
seguimiento de grano fino de una aplicación es requerido es necesario
tomar alternativas para permitirlo, como es el caso de iframe invisibles
para provocar cambios en el historial. Otratécnica implementada es
utilizar el identificador de fragmento en el URL cuando una aplicación
con AJAX habilitada para aplicar control de cambios. HTML5 provee una
API extensiva para trabajar con el historial de navegación.
Grupo Docente ATI
1
Laboratorio 6: AJAX
2. El punto anterior se extiende a la necesidad de colocar marcadores
sobre un estado de la aplicación, la solución del identificadorde
fragmento o la API de HTML5 para el historial del navegador eliminan
igualmente este inconveniente.
3. Dependiendo de la naturaleza de la aplicación AJAX la actualización
dinámica de la misma puede interferir con la interacción del usuario,
especialmente si se encuentran trabajando con conexiones a internet
lentas.
4. Dado que la mayoría de los web crawlers no ejecutan código JavaScript,aplicaciones que deben ser indexadas públicamente deben proveer
formas alternativas para acceder al contenido que normalmente se
accedería mediante AJAX, por supuesto permitiendo igualmente que los
buscadores lo indexen.
5. Aún existen un considerable número de navegadores que no aceptan
JavaScript o el objeto XMLHttpRequest, por lo cual no podrán usar
apropiadamente aplicaciones que dependan en AJAX.La forma de
igualmente proveer las funcionalidades requeridas es hacer uso de
métodos no JavaScript para suplantar la interacción AJAX.
6. Algunas aplicaciones que hagan uso de AJAX son construidas de forma
que no pueden ser leídas o no pueden ser correctamente leídas por
aplicaciones lectoras de pantalla. La Web Accessibility Initiative provee
el estándar WAI-ARIA para que esto no ocurra.
7....
Regístrate para leer el documento completo.