Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

226
Views
¿Cómo resolver el error de navegación del trabajador del servicio "Este trabajador del servicio no es el trabajador del servicio activo del cliente"?

Creé un trabajador de servicio para mi quasar pwa para administrar las notificaciones de fondo web de fcm. El propósito es administrar las notificaciones de clic en primer plano y en segundo plano y redirigir al usuario a una página específica de mi pwa.

Entonces, cuando recibo una notificación, tengo dos escenarios:

notificaciones en primer plano :

  • 1a) el navegador está enfocado/maximizado + el usuario ya está en la pestaña pwa + el pwa está en la página correcta -> nada que hacer
  • 1b) el navegador está enfocado/maximizado + el usuario ya está en la pestaña pwa + el pwa está en otra página -> Tengo que redirigir a la página específica de pwa

notificaciones de fondo :

  • 2a) el navegador no está enfocado o minimizado o el usuario no está en la pestaña pwa + el pwa está en la página correcta -> Tengo que enfocar/maximizar el navegador o enfocar la pestaña pwa y luego nada más que hacer
  • 2b) el navegador no está enfocado o minimizado o el usuario no está en la pestaña pwa + el pwa está en otra página -> Tengo que enfocar/maximizar el navegador o enfocar la pestaña pwa y luego redirigir a la página pwa específica

Todo funciona bien en 1a, 1b y 2a. Para 2b, aparece este extraño error " Este trabajador de servicio no es el trabajador de servicio activo del cliente ".

Tengo el siguiente código en Service Worker para administrar la redirección en el clic de notificación en segundo plano. Y me sale el error en el método de navegar() .

 self.addEventListener('notificationclick', function(event) { console.log('notificationclick', event); event.notification.close(); let route = event.notification.data.route ? JSON.parse(event.notification.data.route) : null; if(route && route.params && route.params.token) { const domain = route.domain; const path = '/#/' + route.name + '/' + route.params.token; const fullUrl = domain + path event.waitUntil(clients.claim().then(() => { return clients.matchAll({ type: 'window', includeUncontrolled: true }) .then(clients => clients.filter(client => client.url.indexOf(domain) !== -1)) .then(matchingClients => { if (matchingClients[0]) { return matchingClients[0].focus().then(function (client) { client.navigate(path) .then(client => { }).catch(function (e) { console.log(e); --> here I get the error }); }).catch(function (e) { console.log(e); }); } return clients.openWindow(fullUrl); }) }) ); } });

Busqué este error en la web pero no encontré ninguna referencia, por lo que no entiendo el error y no puedo resolverlo. ¿Alguien puede ayudar por favor? Gracias

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!