Изменить конечную точку подписки работника сервиса - PullRequest
0 голосов
/ 27 июня 2018

Итак, я пытаюсь войти в Push API и создаю очень простой пример с пустым service-worker.js и index.js, который сейчас вызывает подписку:

function subscribeUserToPush() {
    return navigator.serviceWorker.register('service worker.js').then(function(registration) {
        var subscribeOptions = {
            userVisibleOnly: true,
            applicationServerKey: urlBase64ToUint8Array(
            'foobarkeyoffoobarness'
            )
        };

        return registration.pushManager.subscribe(subscribeOptions);
    }).then(function(pushSubscription) {
        console.log('PushSubscription: ', pushSubscription);
        return pushSubscription;
    });
}

и конечная точка подписки, которую я получаю назад, выглядит примерно так:

Теперь мой вопрос : возможно ли (даже если это плохая идея) иметь собственную конечную точку push-службы, решение для самостоятельного размещения?

Есть ли у Google firebase монополия на это?

Ответы [ 2 ]

0 голосов
/ 27 ноября 2018

Как указывает предлагаемая ссылка , Каждый браузер может использовать любую услугу push, которую они хотят, это то, что разработчики не могут контролировать

Мне нужно было использовать Push-уведомления в организации, которая использует локальную сеть и у нее нет доступа к Интернету, но оказалось, что push-уведомления работника службы не подходят для внутренней сети, по крайней мере, на данный момент, возможно, в ближайшем будущем будут некоторые В решениях есть альтернатива, называемая технологией SignalR, но, как вы знаете, она не работает, когда вкладка браузера закрыта, и поэтому SignalR, в отличие от WbPush, не может разбудить закрытый веб-браузер.

Возможно, единственная надежда - dom.push.serverURL , о которой вы можете прочитать подробнее в здесь . Я также узнал, что Firefox использует Autopush в качестве службы Push. Вот несколько ссылок, которые говорят, что вы не можете: WebPush без третьей стороны - Изменить провайдера Push

0 голосов
/ 03 августа 2018

Если кому-то интересно: https://developers.google.com/web/fundamentals/push-notifications/how-push-works

Во время потока подписки браузер запрашивает подписку у сервер обмена сообщениями. Каждый поставщик браузеров имеет свой собственный обмен сообщениями сервер, но ваш браузер знает, какой сервер нужно вызвать.

...