我不仅想发送带有消息的推送(通过获取),而且有时还发送不可见的推送(即根本不显示通知),只是为了检查有多少用户仍然订阅以及他们接收推送的速度。
我试过这段代码。它似乎有效,但在某些设备上,我收到“此站点已在后台更新”消息,这令人困惑。
self.addEventListener('push', function(event) {
    event.waitUntil(
        fetch(my_awesome_url)
        .then(function(response) {
            if (response.status !== 200) {
                throw new Error('Server code: ' + response.status);
            }
            return response.json().then(function(data) {
                if (typeof data.data !== 'object') return; // invisible push, show nothing
                var notificationData = {
                    body: data.content,
                    data: data.data,
                    tag: data.id || Math.random(),
                    icon: typeof data.data == 'object' ? data.data.image : ''
                };
                return self.registration.showNotification(data.title, notificationData);
            });
        })
        .catch(function (err) {
        })
    );
});
我如何才能真正阻止浏览器显示任何内容?