Nota: Non è disponibile alcuna documentazione legacy per questo elemento, pertanto viene visualizzata la documentazione corrente.
Desideriamo che la tua installazione di PushEngage WordPress sia senza intoppi, ma potresti comunque incontrare problemi. Il service worker è il file chiave per raccogliere gli iscritti ai push e inviare campagne push.
Abbiamo compilato una guida con vari problemi comuni relativi al file Service Worker durante l'installazione di PushEngage e come puoi risolvere questi problemi.
Prima di iniziare
- Dovresti evitare i reindirizzamenti; il file service-worker.js dovrebbe essere accessibile pubblicamente (https://www.tuosito.com/service-worker.js). Se c'è un reindirizzamento quando provi a visitare il file service-worker.js, la tua installazione è errata e anche l'iscrizione fallirà.
- Se vedi un errore 403 o 404 dopo aver tentato di iscriverti al tuo sito, qualcosa impedisce ai file Service Worker di PushEngage di essere apertamente accessibili. Puoi verificarlo visitando la tua Dashboard PushEngage o la Console del tuo Browser. Questi file devono essere scritti in maiuscolo, non come reindirizzamenti. Queste pagine dovrebbero esserti accessibili senza alcun problema.
- È necessario unire i service worker se stai integrando PushEngage in un sito web che ha già un service worker (come una PWA) affinché PushEngage funzioni correttamente. Questa guida ti aiuta a unire il service worker di PushEngage con il service worker esistente sul tuo sito web.
Problemi con il Service worker e le loro soluzioni
Errore 1: URL del file Service Worker errato
TypeError: Impossibile registrare un ServiceWorker per lo scope (https://xxxx) con lo script (https://www). È stato ricevuto un codice di risposta HTTP non valido (404) durante il recupero dello script.

Soluzione: Verifica che il nome e la posizione del file Service Worker corrispondano al valore presente nella tua dashboard PushEngage navigando su Impostazioni Sito » Impostazioni Avanzate » Impostazioni Service Worker

Errore 2: Il browser non ha il permesso di leggere il file Service Worker
TypeError: Impossibile registrare un ServiceWorker per lo scope ('https://xxx') con lo script ('https://xxxx'): È stato ricevuto un codice di risposta HTTP non valido (403) durante il recupero dello script.
Soluzione: Controlla la configurazione del web server con il provider del servizio di hosting web per assicurarti che la configurazione consenta l'accesso in lettura al file Service Worker e che il file sia accessibile pubblicamente da Internet.
Il team di PushEngage non può aiutarti a modificare i permessi, solo la tua azienda di hosting o il tuo team di sviluppo possono aiutarti a risolvere questi permessi.
Errore 3: Impossibile eseguire ‘importScripts’
Uncaught DOMException: Impossibile eseguire 'importScripts' su 'WorkerGlobalScope'. Lo script in (https://xxxxxx) non è stato caricato in (https://www).
Soluzione: Il file Service Worker utilizza un nome di sottodominio errato nell'istruzione importScripts (https://xxxx.pushengage.com) all'interno del file Service Worker. Pertanto, assicurati che l'istruzione importScript utilizzi il sottodominio PushEngage corretto assegnato al sito.
Il valore del parametro di query del dominio nell'URL del Service Worker non è corretto. Questo si applica solo ai siti che utilizzano il plugin WordPress.

Errore 4: Registrazione del Service Worker non riuscita
DOMException: Impossibile registrare un Service Worker per l'ambito (https://www) con lo script (https://xxxxxxxx). Il percorso dell'ambito fornito ('xxx') non rientra nell'ambito massimo consentito ('xxxxxxx'). Regola l'ambito, sposta lo script del Service Worker o utilizza l'intestazione HTTP Service-Worker-Allowed per consentire l'ambito.
Soluzione: Sposta il file service worker nella directory principale e aggiorna il percorso del service worker tramite questa guida.
Dopo averlo fatto, imposta il valore dell'intestazione HTTP Service-Worker-Allowed su ‘/’ per le richieste al file del Service Worker.

Se riscontri problemi, ti preghiamo di contattarci cliccando qui. Il nostro team di supporto sarà in grado di aiutarti.