Nach dem Löschen /serviceworker.js
aus meinem Stammverzeichnis führt Chrome weiterhin den Service Worker aus, den ich von meiner Webroot entfernt habe. Wie deinstalliere ich den Service Worker von meiner Website und Chrome, damit ich mich wieder auf meiner Website anmelden kann?
Ich habe das Problem auf den Cache-Mechanismus von Service Work zurückgeführt und möchte es erst einmal entfernen, bis ich Zeit habe, es zu debuggen. Das Anmeldeskript, das ich verwende, leitet auf die Server von Google weiter, damit diese sich bei ihrem Google-Konto anmelden können. Aber alles, was ich von der Seite login.php bekomme, ist eine ERR_FAILED
Nachricht.
html
google-chrome
service-worker
Mark Tomlin
quelle
quelle
Antworten:
Servicemitarbeiter programmgesteuert entfernen
Sie können Servicemitarbeiter programmgesteuert wie folgt entfernen:
Docs: getRegistrations , austragen
Entfernen von Servicemitarbeitern über die Benutzeroberfläche
Sie können Servicemitarbeiter auch auf der Registerkarte "Anwendung" in Chrome Devtools entfernen.
quelle
Sie können auch zur URL gehen : chrome: // serviceworker-internals / und die Registrierung eines Servicearbeiters von dort aufheben.
quelle
document.querySelectorAll(".unregister").forEach(item=>item.click())
Sie können dies sowohl über das Chrome Developer Tool als auch programmgesteuert tun .
Suchen Sie alle laufenden Instanzen oder Servicemitarbeiter, indem Sie Folgendes eingeben
Klicken Sie in einer neuen Registerkarte auf den Servicemitarbeiter, dessen Registrierung Sie aufheben möchten.
Öffnen Sie die Entwicklertools (F12) und wählen Sie Anwendung aus. Dann entweder
oder
Programmatisch
quelle
In Google Chrome können Sie gehen Entwicklertools (F12) -> Anwendung -> Service Arbeitnehmer und austragen der Service - Mitarbeiter aus der Liste für die jeweilige Domäne.
Diese Methode ist im Entwicklungsmodus einer Site effektiv und wird meistens ausgeführt, auf
localhost
der Sie möglicherweise für die Entwicklung anderer Projekte benötigen.quelle
Sie sollten zwei APIs auf Ihren Geräten erkennen: getRegistrations und getRegistration . Der Service-Worker verfügt nicht auf allen Plattformen über einen eindeutigen Satz von APIs. Zum Beispiel haben einige Browser nur ein
navigator.serviceWorker.getRegistration
, neinnavigator.serviceWorker.getRegistrations
. Sie sollten also mit beiden überlegen.quelle
Zu Ihrer Information: Wenn Sie den MacOS Safari- Browser verwenden, gibt es eine Möglichkeit, die Registrierung eines Servicemitarbeiters zwangsweise aufzuheben (Schritte und Bilder für Safari 12.1):
Safari> Einstellungen ...> Datenschutz> Website-Daten verwalten ...
Geben Sie den Domainnamen ein (z. B. 'localhost') und klicken Sie auf "Entfernen".
Hinweis: Zusätzlich zu den Servicemitarbeitern werden dadurch auch alle Caches, Cookies und Datenbanken für diese Domain gelöscht.
quelle
Zusätzlich zu den bereits korrekten Antworten können Sie, wenn Sie auch den SW-Cache löschen möchten, die folgende Methode aufrufen:
Mehr in diesem Artikel (Absatz: "Registrierung eines Servicemitarbeiters aufheben")
Eine andere Möglichkeit über den Browser besteht darin, auf den Abschnitt "Cache-Speicher" zuzugreifen und auf die Schaltfläche "Site-Daten löschen" zu klicken:
quelle
Deinstallieren Sie Service Worker sicher
quelle
Servicemitarbeiter erkennen:
Code zum Löschen des Servicemitarbeiters:
quelle