Ich implementierte Push-Benachrichtigung mit Service Worker. Ich speichere die Endpunkte in meiner Datenbank. Wie kann ich den alten Abonnementeintrag aus db löschen, wenn sich das aktuelle Abonnement ändert/abläuft? "pushsubscriptionchange" -Ereignis Ich höre im Service-Mitarbeiter. Es wird jedoch nicht ausgelöst, wenn ich die Benachrichtigungssubskription in Chrome-Einstellungen auf "Immer auf dieser Site blockieren" geändert habe. Irgendeine Hilfe?Löschen abgelaufener Push-Subskriptions-Endpunkte von db, die über Service Worker erstellt wurde
Antwort
Ich glaube nicht, dass das Entzug von Benachrichtigungsrechten über Standorteinstellungen jemals das Ereignis pushsubscriptionchange
beim Service-Mitarbeiter auslösen wird.
Stattdessen denke ich, was Sie tun könnten, ist eine Ablehnung der registration.pushManager.subscribe()
Methode von Ihren Client-Seiten zu erkennen. Gemäß Schritt 9 von the specification für subscribe()
,
Wenn nicht gewährt, ablehnen versprechen mit einem DOMException, dessen Name „NotAllowedError“ und diese Schritte beenden.
Also ich denke, das ist, was Sie in der Lage sein würden, in dem Szenario zu erkennen, das Sie beschreiben.
Wie für die Abonnement-Endpunkte in diesem Szenario zu bereinigen, würde ich sagen, dass Sie alle aufräumen sollten? Der Benutzer hat die Benachrichtigungen deaktiviert. Daher glaube ich nicht, dass einer der vorhandenen Endpunkte weiter verwendet werden würde.
- 1. Können Benutzer den Service-Worker-Cache löschen?
- 2. Löschen abgelaufener Token in oauth2-server-php
- 3. Verwaltung von Service-Worker-Cache
- 4. Service Worker Ablauf
- 5. Service Worker Registrierung Problem
- 6. XMLHttpRequest in Service Worker
- 7. Löschen von Service über Terminal in Grails
- 8. Aktivieren von Service Worker mithilfe der Workbox
- 9. Service Worker Cache-Größen
- 10. Zugriff auf localStorage von Service Worker
- 11. Understanding Service Worker Bereich
- 12. Service Worker, Doppel-Caching?
- 13. CDN Service Worker
- 14. FCM Service Worker setBackgroundMessageHandler
- 15. Service-Worker Cache-Speicher
- 16. Service Worker und AJAX
- 17. TensorFlow Master und Worker Service
- 18. Firebase-Dienst wird nicht aktualisiert. Service Worker
- 19. 'Mongod' läuft nicht, obwohl die/data/db-Datei erstellt wurde
- 20. Wrapper für die dynamische Cache-HTTP-URLs mit Service-Worker?
- 21. Sicherheitskontext der DB-Verbindung über Web Service Call
- 22. Push-Ereignis von Service Worker wird nicht
- 23. Verwenden von Service Worker in angularjs
- 24. Einen Ton von einem Service Worker wiedergeben
- 25. automatisch entfernen Benutzer nach abgelaufener Zeit in DB
- 26. Service Worker Caches zu viel
- 27. Workbox Service Worker mit Hintergrundsynchronisierungsmodul
- 28. So heben Sie die Registrierung von Service Worker auf, die von Firebase Messaging installiert wurden
- 29. Entfernen abgelaufener Benachrichtigungen von Firebase
- 30. Wie Hintergrundsynchronisierung in Service Worker abgebrochen wird?