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

163
Visualizações
Safari y Chrome en IOS no escuchan los eventos enviados por el servidor cuando el navegador está en segundo plano

Estoy tratando de redirigir mi aplicación web Angular a una URL diferente que recibe de los eventos enviados por el servidor . Esta característica funciona bien cuando el navegador está en primer plano en IOS. Sin embargo, cuando un usuario cambia el navegador al fondo, la aplicación Angular no escucha ningún evento .

Este problema solo ocurre en IOS . En Andriod, los navegadores reciben eventos enviados por el servidor incluso cuando el navegador está en segundo plano.

servicio.ts

 getServerSentEvent(merchantTransactionId: string, txnDate: string): Observable<any> { return new Observable<string>(obs => { const appType = 'guest-checkout'; const url = environment.BASE_DATA_URL + '/api/event/server-sent/event/subscribe/' + appType + '/' + merchantTransactionId; const es = new EventSource(url); es.addEventListener('message', (event) => { // alert(event.data); obs.next(event.data); }); return () => es.close(); }); }

He añadido un cuadro de alerta para probar si aparece en el móvil o no. No aparece cuando el navegador está en segundo plano. Además, probé onmessage en lugar de addEventListener y no hubo cambios.

componente.ts

 triggerSSEEvent(merchantTxnId, txnDateString): void { this.sseService.getServerSentEvent(merchantTxnId, txnDateString).subscribe( (data) => { const response = JSON.parse(data); this.responseURL = response.url; window.location.href = response.url; }, (error) => { this.showError(); } ); }

Nota: el usuario generalmente cambia el navegador para aceptar la solicitud de inserción de otra aplicación.

about 4 years ago · Juan Pablo Isaza
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