Forma completa de AJAX y por qué lo usamos
Ajax no es un lenguaje de programación o una herramienta, es un concepto. Ajax es un script del lado del cliente que se comunica desde y hacia un servidor / base de datos sin la necesidad de una devolución de datos o una actualización de página completa. La forma completa de AJAX es JavaScript y XML asíncronos. La mejor definición que he leído de Ajax es «el método de intercambiar datos con un servidor y actualizar partes de una página web, sin recargar toda la página». Ajax en sí mismo es principalmente un término genérico para varias técnicas de JavaScript con las que se establece una conexión dinámica a un servidor web sin tener que cargar varias páginas. En un sentido más estricto, se refiere al uso de objetos XmlHttpRequest para interactuar dinámicamente con un servidor web a través de JavaScript.
Beneficios del Ajax
Hay cuatro ventajas principales de usar Ajax en aplicaciones web:
Recuerda: Ajax se utiliza para hacer una devolución de llamada y hacer un viaje de ida y vuelta corto hacia y desde el servidor para recuperar y / o almacenar datos sin enviar la página completa al servidor. No realizar una devolución de datos completa y enviar todos los datos del formulario al servidor minimizará el tráfico de red y dará como resultado operaciones más rápidas. En ubicaciones y ubicaciones con ancho de banda limitado, esto puede mejorar significativamente el rendimiento de la red. La mayoría de las veces, los datos enviados hacia y desde el servidor son mínimos. Cuando se utilizan devoluciones de llamada, el servidor no necesita procesar todos los elementos del formulario. Si solo se envían los datos requeridos, el procesamiento en el servidor está restringido. No es necesario procesar todos los elementos del formulario, procesar ViewState, enviar imágenes al cliente o enviar una página completa al cliente.
Para realizar llamadas asincrónicas: Ajax le permite realizar llamadas asincrónicas a un servidor web. De esta forma, el navegador del cliente puede evitar esperar a que lleguen todos los datos antes de que el usuario pueda actuar de nuevo.
Fácil de usar: Dado que no hay devolución de datos de la página, las aplicaciones habilitadas para Ajax son siempre más receptivas, más rápidas y más fáciles de usar.
Mayor velocidad: El objetivo principal de Ajax es mejorar la velocidad, el rendimiento y la usabilidad de una aplicación web. Un buen ejemplo de Ajax es la función de clasificación de películas en Netflix. El usuario califica una película y su calificación personal para esa película se almacena en su base de datos sin esperar a que la página se actualice o se vuelva a cargar. Estas clasificaciones de películas se almacenan en su base de datos sin que se devuelva la página completa al servidor.
Aspectos técnicos del Ajax
Las devoluciones de llamada de Ajax se pueden realizar creando una instancia de un objeto XMLHttpRequest en el JavaScript del lado del cliente. Con el objeto XMLHttpRequest, los objetos del lado del servidor, como páginas y servicios web, se pueden llamar directamente. Estas páginas y servicios web almacenan y / o devuelven datos.
Ajax era originalmente una abreviatura de JavaScript asincrónico y XML. «Asincrónico» significa que varios eventos tienen lugar de forma independiente entre sí. Una vez que un cliente inicializa una devolución de llamada Ajax al servidor, el cliente no tiene que esperar una respuesta y puede continuar usando la aplicación web mientras se procesa la solicitud. Una vez hecho esto, el servidor envía una respuesta al cliente y el cliente la procesa según sea necesario.
¿Qué progreso se ha logrado en el Ajax?
JavaScript es el lenguaje de programación del lado del cliente y XML es un lenguaje de marcado para definir datos. JSON es otro lenguaje de marcado para definir datos. JSON (JavaScript Object Notation) es mucho más fácil de usar con JavaScript que con XML. Cuando se trata de Ajax y JavaScript, los servicios web JSON reemplazan a los servicios web XML.
Otro avance importante sobre JavaScript y Ajax es la biblioteca de objetos JavaScript llamada jQuery. Este software gratuito de código abierto es un contenedor para JavaScript. JQuery facilita la escritura de JavaScript del lado del cliente para navegar y editar una página y realizar devoluciones de llamada Ajax asincrónicas.
Con el uso de servicios web jQuery y JSON, las devoluciones de llamada Ajax se han convertido en el método de programación estándar para diseñar y desarrollar aplicaciones web.
Ajax Control Toolkit es un conjunto de control creado por Microsoft que está integrado en Visual Studio y, como HTML y controles de servidor, se puede arrastrar a formularios web y almacenar allí. Estos controles están pensados para devoluciones de llamada Ajax. Sin embargo, también se pueden utilizar como controles normales de cliente y / o servidor. Por ejemplo, Asp.Net no viene con los controles de pestañas. Sin embargo, el kit de herramientas de control Ajax sí lo hace. El control de pestañas se puede enviar de vuelta al servidor al igual que los controles del servidor.
¿Dónde debería usarse?
Debe usarse en cualquier lugar de una aplicación web donde se puedan almacenar o recuperar pequeñas cantidades de información del servidor sin devolver la página completa. Un buen ejemplo de esto es la validación de datos durante las acciones de almacenamiento. Otro ejemplo sería cambiar los valores en un cuadro de lista desplegable en función de otras entradas, como: B. Cuadros de lista estatales y universitarios. Si el usuario selecciona un estado, el cuadro de lista de colegios solo se completará con colegios y universidades de ese estado.
Otro buen ejemplo es cuando el cliente necesita guardar o recuperar valores de sesión del servidor en función de la configuración del usuario, como la altura, el ancho o la posición de un objeto. Ajustar el ancho permite una devolución de llamada al servidor para establecer la variable de sesión para el nuevo ancho. De esta forma, cada vez que se actualiza la página, el servidor puede ajustar el ancho del objeto en función de esta variable de sesión. De lo contrario, el objeto volvería a su ancho estándar original.
Otras funciones son notas de texto y campos de texto para completar automáticamente. El cliente ingresa algunas letras y a continuación se muestra una lista de todos los valores que comienzan con esas letras. Se envía una devolución de llamada a un servicio web que obtiene todos los valores que comienzan con estos caracteres. Esta es una característica fantástica que no sería posible sin Ajax y también es parte del Kit de herramientas de control de Ajax.