Javascript 禁用显示通用浏览器推送通知
我已经实现了浏览器推送通知功能,并且工作正常。我用这本指南作为参考 然而,由于负载仍然不受支持,我决定查询我的服务器以获取每个用户的通知数据,这也可以正常工作 但有一个问题。在某些情况下,从服务器获取数据后,我希望控制是否显示通知。我不知道该怎么做。我尝试返回false、抛出错误等,但始终显示默认通知,即使我不调用showNotification方法。让我知道如何解决这个问题。以下是相关代码Javascript 禁用显示通用浏览器推送通知,javascript,google-chrome,notifications,push-notification,google-cloud-messaging,Javascript,Google Chrome,Notifications,Push Notification,Google Cloud Messaging,我已经实现了浏览器推送通知功能,并且工作正常。我用这本指南作为参考 然而,由于负载仍然不受支持,我决定查询我的服务器以获取每个用户的通知数据,这也可以正常工作 但有一个问题。在某些情况下,从服务器获取数据后,我希望控制是否显示通知。我不知道该怎么做。我尝试返回false、抛出错误等,但始终显示默认通知,即使我不调用showNotification方法。让我知道如何解决这个问题。以下是相关代码 self.addEventListener('push', function(event) {
self.addEventListener('push', function(event) {
event.waitUntil(
fetch('/getPushNotificationData/').then(function(response){
if (response.status !== 200) {
// I don't want to show any notification in this case
console.log('Looks like there was a problem. Status Code: ' + response.status);
throw new Error();
}
return response.json().then(function(data){
var shouldDisplay = data.shouldDisplay;
if (shouldDisplay=='1'){
var title = data.title;
var message = data.message;
var url = data.url;
return self.registration.showNotification(title, {
body: message,
data: url
});
}
else{
// I don't want to show any notification in this case also
return true;
}
});
})
);
});
您的可能副本无法阻止显示此通知。好的,谢谢你提供的信息。我想在这种情况下我必须依靠备份通知。是否有此功能的发布跟踪程序或有关此功能是否正在开发中的任何其他信息?我不知道,但您可以尝试在或上询问。我希望对此进行澄清,以确保我正确理解上述内容。I没有办法重新设计或使用外观更好的弹出窗口替换本机浏览器提示?您的可能副本无法阻止显示此通知。好的,谢谢你提供的信息。我想在这种情况下我必须依靠备份通知。是否有此功能的发布跟踪程序或有关此功能是否正在开发中的任何其他信息?我不知道,但您可以尝试在或上询问。我希望对此进行澄清,以确保我正确理解上述内容。我不知道有没有办法重新设计或用一个更好看的弹出窗口替换本机浏览器提示符?