Управляющий сервисный работник не поддерживает amp-web-push - PullRequest
1 голос
/ 24 октября 2019

Я работаю над веб-push-уведомлением amp, используя FCM, а также использую пользовательский сервисный работник, но иногда я получаю The controlling service worker does not support amp-web-push ошибку в консоли.

код сервисного работника: -

importScripts('https://www.gstatic.com/firebasejs/5.5.9/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/5.5.9/firebase-messaging.js');
var swScope ="https://www.example.com/" ;
const WorkerMessengerCommand = {
    AMP_SUBSCRIPTION_STATE: 'amp-web-push-subscription-state',
    AMP_SUBSCRIBE: 'amp-web-push-subscribe',
    AMP_UNSUBSCRIBE: 'amp-web-push-unsubscribe',
};
self.addEventListener('message', event => {
    const { command } = event.data;

    switch (command) {
        case WorkerMessengerCommand.AMP_SUBSCRIPTION_STATE:
            onMessageReceivedSubscriptionState();
            break;
        case WorkerMessengerCommand.AMP_SUBSCRIBE:
            onMessageReceivedSubscribe();
            break;
        case WorkerMessengerCommand.AMP_UNSUBSCRIBE:
            onMessageReceivedUnsubscribe();
            break;
    }
});
function onMessageReceivedSubscribe() {
    var _FCMconfig = {
        messagingSenderId: 'xyz'
    };
    firebase.initializeApp(_FCMconfig);
    FCMmessaging = firebase.messaging();
    var dbToken = getTokenDataFromIndexDB();
    dbToken.then(function (indexDbData) {
        FCMmessaging.getToken()
            .then(function (fcmDbToken) { })
            .catch(function (err) { });
    });
};
function onMessageReceivedSubscriptionState() {
};
function onMessageReceivedUnsubscribe() {

};
self.addEventListener('install', function (event) {
    event.waitUntil(self.skipWaiting());
});

self.addEventListener('activate', function (event) {
    event.waitUntil(self.clients.claim());
});
function broadcastReply(command, payload) {

};
function getTokenDataFromIndexDB() {
    return firebase.messaging().tokenDetailsModel.getTokenDetailsFromSWScope(swScope);
};

Я проверил страницы усилителя и получил зеленый сигнал от проверки усилителя. Я также искал в Google, но не нашел решения для этой проблемы.

...