Po usunięciu /serviceworker.js
z mojego katalogu głównego Chrome nadal uruchamia narzędzie Service Worker, które usunąłem z mojego webroota. Jak odinstalować program Service Worker z mojej witryny internetowej i przeglądarki Chrome, aby móc ponownie zalogować się do mojej witryny internetowej?
Wyśledziłem problem do mechanizmu pamięci podręcznej usługi Service Work i chcę go teraz usunąć, dopóki nie będę miał czasu na debugowanie. Skrypt logowania, którego używam, przekierowuje na serwery Google, aby mogli zalogować się na swoje konto Google. Ale wszystko, co otrzymuję ze strony login.php, to ERR_FAILED
wiadomość.
html
google-chrome
service-worker
Mark Tomlin
źródło
źródło
Odpowiedzi:
Programowe usuwanie elementów Service Workers
Możesz usunąć Service Workery programowo w następujący sposób:
Dokumenty: getRegistrations , unregister
Usuwanie Service Workers za pomocą interfejsu użytkownika
Możesz także usunąć pracowników usługi na karcie Aplikacja w Chrome Devtools.
źródło
Możesz również przejść do adresu URL: chrome: // serviceworker-internals / i wyrejestrować pracownika serwisu.
źródło
document.querySelectorAll(".unregister").forEach(item=>item.click())
Możesz to zrobić za pomocą narzędzia Chrome Developer Tool, a także programowo .
Znajdź wszystkie uruchomione instancje lub elementy Service Worker, wpisując
w nowej karcie, a następnie wybierz pracownika serwisu, którego chcesz wyrejestrować.
Otwórz narzędzia deweloperskie (F12) i wybierz aplikację. Wtedy albo
lub
Programowo
źródło
W Google Chrome możesz przejść do Narzędzia programistyczne (F12) -> Aplikacja -> Pracownik serwisu i wyrejestrować pracowników serwisu z listy dla tej konkretnej domeny.
Ta metoda jest skuteczna w trybie deweloperskim witryny i przeważnie działają na
localhost
których możesz potrzebować do rozwoju innych projektów.źródło
Powinieneś wykryć dwa API na swoich urządzeniach: getRegistrations i getRegistration . Service-Worker nie ma unikalnego zestawu interfejsów API na wszystkich platformach. Na przykład niektóre przeglądarki mają tylko rozszerzenie
navigator.serviceWorker.getRegistration
, nienavigator.serviceWorker.getRegistrations
. Więc powinieneś rozważyć oba.źródło
Do Twojej wiadomości, jeśli używasz przeglądarki MacOS Safari , istnieje jeden sposób na wymuszenie wyrejestrowania pracownika serwisu (instrukcje i obrazy dla Safari 12.1):
Safari> Preferencje ...> Prywatność> Zarządzaj danymi witryny…
Wpisz nazwę domeny (np. „Localhost”), kliknij „Usuń”
Uwaga: Oprócz pracowników usługowych spowoduje to również usunięcie wszystkich pamięci podręcznych, plików cookie i baz danych dla tej domeny.
źródło
Oprócz podanych już poprawnych odpowiedzi, jeśli chcesz również usunąć pamięć podręczną SW, możesz wywołać następującą metodę:
Więcej w tym artykule (akapit: „Wyrejestruj pracownika serwisu”)
Inną możliwością, poprzez przeglądarkę, jest przejście do sekcji „Pamięć podręczna” i kliknięcie przycisku „Wyczyść dane witryny”:
źródło
bezpiecznie odinstaluj Service Worker
źródło
aby wykryć pracownika serwisu:
Kod do usunięcia pracownika serwisu:
źródło