Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

299
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda