Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

286
Vistas
Obtenga datos de una API solo en la actualización en NodeJS

Estoy recuperando datos de una API de reserva donde la disponibilidad de habitaciones cambia cada vez. Lo que estoy haciendo es recuperar los datos cada 1 segundo usando setInterval.

 const interval = setInterval(getData, 1000);

que funciona bien, pero pensé que sería mejor si hubiera una forma de recuperar solo si hubiera una actualización o un cambio en la API de datos que estaba recuperando. He buscado por todos lados pero no encuentro nada sobre esto.

Para el lado del servidor, digamos que obtengo datos de https://api.publicapis.org/entries usando Express y realizo algunos cambios en los datos y ahora mis datos están disponibles en https://localhost:3001/api/entries y yo consumirlo y mostrar lo que quiero usando React.

Digamos que https://api.publicapis.org/entries cambia sus datos cada vez, ¿cómo puedo recuperar cuando solo cambian los datos, para que en https://localhost:3001/api/entries los datos cambien en consecuencia?

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Le recomiendo que use el mecanismo QueryCache de React Query ( https://react-query.tanstack.com/reference/QueryCache#_top ), es una característica muy poderosa porque, de manera predeterminada, cada resultado de la consulta se almacena en caché durante cinco minutos y depende de ese caché. para solicitudes posteriores.

React query sabe que los datos del servidor pueden haberse actualizado y es posible que la memoria caché no contenga los datos más recientes, por lo que se activa una recuperación en segundo plano para la misma consulta y, si la recuperación es exitosa, los nuevos datos se actualizan en la interfaz de usuario. Dado que nuestros datos son los mismos que los datos almacenados en caché, no vemos ningún cambio en la interfaz de usuario...

Videotutorial de YouTube como referencia

about 4 years ago · Juan Pablo Isaza Denunciar

0

Creo que puede hacer algo tanto desde el lado del servidor como desde el lado del cliente, desde el lado del cliente, use setTimeout en lugar de setInterval, que puede permitirle enviar la siguiente solicitud solo si obtiene la última respuesta, por ejemplo:

 let timeout function getData() { // await request here.. timeout = setTimeout(getData, 1000) }

y luego, consulte nuevos datos con los últimos datos de actualización en el servidor, de modo que el lado del servidor pueda saber si es necesario enviarle algún dato de actualización. Si desea que el servidor le notifique cuándo debe obtener la actualización, creo que debe usar sockets.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda