¿Qué es AJAX, realmente?

Tengo que empezar a usar AJAX en un proyecto y no sé por dónde empezar. ¿Puede ayudarme alguien, por favor?

Un J avaScript sincrónico y X ml. Una técnica para lograr comunicaciones bidireccionales guiadas por scripts entre buscadores web y servidores a través de HTTP.

Ver también:

  • definición en Wikipedia
  • Introducción a AJAX en w3schools
  • Taller 1 de Ajax sobre las lecciones de Ajax

Editar: Como señaló Nosredna, JSON se usa a menudo en lugar de XML.

La idea aproximada en inglés:

Usted tiene una página web. Se produce algún evento (puede ser presionar un botón u otro evento de formulario, o simplemente algo provocado por un temporizador) y desencadena código JavaScript que solicita al servidor información nueva (como el último valor de stock de GOOG).

Hay un fragmento de código en el servidor que recostack la información que pasó y le envía cierta información. Eso es diferente del trabajo de servicio de página que suele tener el servidor.

Cuando el servidor responde, se llama a una función de callback (que especificó en la llamada de JavaScript al servidor) con la información del servidor. Su código de JavaScript usa la información para actualizar algo, como una tabla de acciones de GOOG.

No debe confundirse con el limpiador , AJAX, el término de tecnología , realmente está describiendo un marco o mejor dicho como una técnica para usar XML y JavaScript para hacer llamadas asíncronas al código del lado del servidor …

Aquí hay algunas buenas muestras de código . Y algo más .

Si bien muchos de estos ejemplos anteriores muestran cómo crear todos los objetos XML Request, si observa el AJAX Control Toolkit de Microsoft para aplicaciones ASP.NET o jQuery, encontrará estos más fáciles de usar.

jQuery Sample (del sitio jQuery ):
cuando se golpea el código, se golpea el archivo some.php pasando los valores de nombre y ubicación en.

  

Es una palabra de moda, la esencia de esto es:

Usar Javascript para realizar una solicitud HTTP asíncrona (en segundo plano) .

Cuando llega el contenido, se realiza una acción, por lo general, realizar un poco de lógica y luego actualizar la apariencia de la página manipulando el árbol DOM; es decir, insertar nuevos elementos HTML, eliminar algunos elementos html, etc.

La X en AJAX significa XML, pero es irrelevante. XML es solo una de las muchas maneras de formatear los datos que envía el servidor. JSON es una alternativa mucho mejor (IMNSHO). Además, el servidor puede enviar texto sin formato o simplemente html regular.

La palabra clave aquí es una solicitud asincrónica. Una solicitud que ocurre en segundo plano, sin que el navegador tenga que volver a cargar la página.

Más comúnmente, se refiere al uso del objeto XMLHttpRequest a través de JavaScript * en un navegador.

Dependiendo de a quién le pregunte, podría usarse para describir casi cualquier tipo de comunicación cliente / servidor a través de HTTP, además de solo escribir una URL en un navegador.

* jQuery proporciona un buen código de contenedor para manejar las diferencias entre navegadores, etc.

Del libro Pragmatic Ajax :

¿Qué es Ajax?

Ajax es una bestia dura para destilar en una sola línea. La razón por la que es tan difícil es porque tiene dos lados:

  • Ajax se puede ver como un conjunto de tecnologías.
  • Ajax se puede ver como una architecture.

Ajax: JavaScript y XML asíncronos

El nombre Ajax proviene de la combinación de sus tecnologías habilitadoras: un canal de comunicación asíncrono entre el navegador y el servidor, JavaScript y XML. Cuando se definió, se concibió de la siguiente manera:

  • Presentación basada en estándares utilizando XHTML y CSS
  • Visualización e interacción dinámicas utilizando el Modelo DocumentObject del navegador (DOM)
  • Intercambio y manipulación de datos usando XML y XSLT
  • Recuperación de datos asincrónica utilizando XMLHttpRequest o XMLHTTP (de Microsoft)
  • JavaScript vincula todo junto

Aunque es común desarrollar utilizando estas tecnologías habilitantes, puede convertirse rápidamente en un problema más que una recompensa.

Es por estas razones que la definición más importante para Ajax es …

Ajax: la architecture

La emocionante evolución que es Ajax está en la forma en que se diseñan las aplicaciones web. Veamos primero a la architecture web convencional:

  1. Defina una página para cada evento en la aplicación: vea los artículos, compre artículos, revise, etc.
  2. Cada evento o acción devuelve una página completa al navegador.
  3. Esa página se representa al usuario.

Esto parece natural para nosotros ahora. Tenía sentido al comienzo de la Web, ya que la web no era realmente acerca de las aplicaciones. La Web comenzó como un repository de documentos; era un mundo en el que simplemente podías vincular los documentos de forma ad hoc. Se trataba de compartir documentos y datos, no de interactividad en ningún sentido significativo.

Imagine una aplicación de escritorio enriquecida por un momento. Imagine lo que pensaría si, en cada clic, todos los componentes de la pantalla de la aplicación vuelven a aparecer desde cero. Parece un poco loco, ¿no? En la Web, ese era el mundo en el que vivíamos hasta que apareció Ajax.

Ajax es una nueva architecture. Las partes importantes de esta architecture son:

  • Pequeños eventos del lado del servidor: ahora los componentes en una aplicación web pueden hacer pequeñas solicitudes a un servidor, obtener información y modificar la página que se ve al cambiar el DOM. Sin actualización de página completa

  • Asíncrono: las solicitudes publicadas en el servidor no bloquean el navegador. El usuario puede continuar utilizando otras partes de la aplicación, y la interfaz de usuario puede actualizarse para alertar al usuario de que se está realizando una solicitud.

  • onAnything: podemos interactuar con el servidor en función de casi cualquier cosa que haga el usuario. Los navegadores modernos atrapan la mayoría de los mismos eventos de usuario que el sistema operativo: mouseover, clics del mouse, presionar teclas, etc. Cualquier evento del usuario puede causar una solicitud asincrónica.

Todo esto suena genial, ¿no? Con este cambio, tenemos que tener cuidado, sin embargo. Una de las mejores cosas de la Web es que cualquiera puede usarla. Tener semántica simple ayuda a que eso suceda. Si nos excedemos, podríamos comenzar a sorprender a los usuarios con nuevas abstracciones de UI. Esta es una queja común con las IU Flash, donde los usuarios se enfrentan con nuevos símbolos, metáforas y acciones necesarias para lograr resultados útiles.

Ajax es un poco inapropiado. Para citar el artículo de la wiki:

A pesar del nombre, el uso de JavaScript y XML en realidad no es necesario, y las solicitudes tampoco deben ser asincrónicas.

Mientras que ahora la mayoría de la gente llama “ajax” a cualquier tipo de

aplicación web que se comunica con un servidor en segundo plano

http://www.w3schools.com/Ajax/Default.Asp

ese es un buen lugar para comenzar. Esto debería responder todas sus preguntas.

Del hombre que acuñó el término – http://adaptivepath.com/ideas/essays/archives/000385.php

“Ajax” es el término de marketing exitoso presentado en 2005 para reemplazar el antiguo término “DHTML” que no se pegaba bien. “Ajax” hoy también es parte de la historia a medida que aparece la nueva palabra: “HTML5”. Aún así, “HTML5” es más o menos lo que solía ser el “DHTML” original.

Ajax también se refiere como “el nuevo enfoque para el desarrollo de aplicaciones” donde una página web se crea inicialmente en el servidor pero más adelante, durante su vida útil, las actualizaciones se realizan en el cliente a medida que los datos o el contenido parcial se comunican a el servidor en un segundo plano.

Espero que esto aclare.

Solo para agregar … puede no ser relevante para la pregunta … aunque, AJAX se hizo famoso por Gmail en los correos electrónicos de su navegador … el crédito de AJAX va para Microsoft … crearon lo de AJAX …

Es JavaScript, pero funciona.

Creo que la manera más rápida y fácil de comenzar es con jQuery:

http://jquery.com/

http://docs.jquery.com/Ajax/jQuery.ajax#examples

AJAX significa JavaScript asincrónico y XML, aunque ya no se ocupa de datos XML. Básicamente se reduce a usar el objeto XMLHttpRequest a través de JavaScript que se ejecuta en el cliente para realizar una solicitud web y recuperar cierta información que utiliza para actualizar el estado de su página sin necesidad de actualizar la página.

Comience con un tutorial básico que le muestra cómo usar bare-bones Ajax para realizar solicitudes asincrónicas como http://www.w3schools.com/Ajax/Default.asp antes de pasar a usarlo en una aplicación de nivel de producción.

Al usarlo en una aplicación, es mucho mejor que investigue uno de los marcos de JavaScript comunes que abstraen las diferencias entre los distintos navegadores y hacen que sea fácil manipular la página después de que la solicitud regrese. Yo personalmente recomiendo http://www.jquery.com/

Leí Head First AJAX como mi primera referencia AJAX y descubrí que ofrece una visión general simple y práctica de AJAX.

Uso creativo de tecnología previamente conocida. Tanto el scripting del lado del navegador como el acceso programático a los datos en el servidor se conocen anteriormente. En AJAX se ha diseñado para un uso innovador y nuevas aplicaciones de la teología conocidas anteriormente. El REST viene a la mente como un tipo similar de avance …

AJAX es muy simple: alguien en algún lugar pensó que sería genial poder enviar algo al servidor y recibir algo de él sin tener que volver a cargar una página.

AJAX no es una revolución, es solo un nombre para algo simple: una página web puede enviar una solicitud al servidor sin ser reubicada, solo algunas cosas asincrónicas aquí.

Puede agregar controles AJAX en sus páginas web sin ningún trabajo, simplemente arrástrelos con Visual Studio. Puede que tenga que agregar algún administrador para ellos, pero es simplemente una tarea de arrastrar y soltar.

Pero ten cuidado: el navegador web malicioso generalmente no habla el mismo idioma AJAX como IE …

🙂

AJAX es realmente un término sofisticado para darle al navegador la capacidad de actualizar partes de su contenido con la necesidad de volver a cargar una página completa. Como muchos han dicho, no requiere XML, o incluso Javascript para implementarlo. De hecho, en sus primeros días se hizo con VBScript y Jscript y acaba de llamar a DHTML. Jesse James Garrett pudo haber inventado el término AJAX , pero fue realmente Microsoft quien inventó el concepto detrás de él.

Esta fuente dice que Microsoft comenzó en 1999 , pero yo daría fecha al nacimiento de esta tecnología aún más. Este artículo de Wired es probablemente más preciso en la fecha de esta tecnología a finales de los 90, en gran parte a partir de los viejos tiempos de las columnas MSDN DHTML Dude escritas por Michael Wallent en Microsoft, que comenzaron en 1997. Gran parte de la historia es también contado en este gran video aquí por el propio Michael: http://channel9.msdn.com/posts/Charles/Michael-Wallent-Advent-and-Evolution-of-WPF/ Megan todavía trabaja en Microsoft por cierto trabajando en el El equipo de Silverlight en la actualidad es el reemplazo de Microsoft para ActiveX .

Volvemos al tema de AJAX … cuando Jesse James Garrett en 2005 hablaba sobre todo sobre el uso de XMLHTTPRequest dentro del código Javascript, y una pizca de sal. Luego, comenzó una palabra de moda que muchas personas comenzaron a usar aunque no tenían idea de qué se trataba, y pensó que era realmente algo nuevo y moderno, cuando en realidad era solo un remix de algo viejo … algo así como muchas canciones de hip-hop que escuchas hoy en día.

No es nuevo, ¡es solo una versión más nueva de algo viejo!

Lo probaré y diré que “es el concepto de tener una solución basada en W3C (JavaScript, HTML y CSS) para construir aplicaciones ricas para ejecutar en la web en un navegador”

Todo lo demás es solo “detalles técnicos”, supongo …;)

¡PD! – pregunta increíble … !! 😉

AJAX (Asynchronous JavaScript and XML) es un nuevo término acuñado para dos poderosas características del navegador que han existido durante años, pero muchos desarrolladores web lo pasaron por alto hasta hace poco cuando las aplicaciones como Gmail, Google Suggest y Google Maps salieron a la calle. Para saber más información sobre Ajax learn Ajax tutorial

Es un producto de limpieza.

También representa algo muy genial construido con un lenguaje de progtwigción muy odioso.