Javascript
HTTP
json
APIs
actualización dinámica
web moderna
Hoy en día, las cosas son muy distintas. Gracias a JavaScript, los sitios modernos pueden hacer solicitudes en segundo plano para traer solo la información que necesitan. Esto permite actualizar partes específicas de la página, como un listado de noticias, un precio en tiempo real o una lista de comentarios, sin tener que recargar todo el sitio.
JavaScript puede hacer solicitudes HTTP adicionales mientras la página ya está cargada. Esto se hace normalmente con funciones como:
fetch()
→ moderna y simpleXMLHttpRequest
→ más antiguaEntonces, JavaScript actúa como ese camarero: trae solo lo que necesitas, cuando lo necesitas.
sequenceDiagram participant Usuario participant Navegador participant API Usuario->>Navegador: Interactúa con la página Navegador->>API: Envía solicitud HTTP API-->>Navegador: Responde con datos (JSON) Navegador->>Navegador: Actualiza el DOM con la nueva información
Cuando JavaScript hace una solicitud para actualizar parte de la página, no recibe una página HTML completa como antes. En cambio, recibe datos ligeros y fáciles de procesar, en formatos como:
JSON
: Es el formato más común. Representa datos de manera simple y compacta, ideal para que JavaScript los lea fácilmente.XML
: Una forma más antigua y compleja de estructurar datos, hoy en desuso para la mayoría de los casos web.HTML
o texto plano: A veces el servidor manda directamente el contenido listo para insertarlo en la página.Por ejemplo, piensa en un sitio de noticias que actualiza los titulares cada minuto sin recargar, lo que sucede es lo siguiente:
/api/titulares
.Ahora bien, ¿Qué pasa si algo falla? A veces la solicitud puede fallar. Hay varios motivos por los cuales esa solicitud podría fallar. Por ejemplo: El servidor está caído o no responde, la red del usuario está lenta o desconectada, hay un error en la URL de la solicitud o el servidor responde, pero devuelve un error (como un 404 o un 500).
Estas situaciones son normales en Internet, por eso el navegador y JavaScript deben estar preparados para manejarlas de manera inteligente. Algunas formas de manejarlo cuando se detecta un problema, seria:
Así, aunque algo salga mal, la experiencia del usuario no se rompe completamente. Es por esto que las actualizaciones dinámicas con JavaScript, es una de las claves del desarrollo web moderno, ya que nos dan sitios más rápidos, más fluidos, y con una experiencia mucho más natural para el usuario.