我一直在努力尝试在chrome
上启用通知几个小时,在Firefox上它完美运行,并且在localhost
网址上也能正常工作。但是当谈到非localhost url地址时,它就无法正常工作。
我一直在检查网址输入框旁边显示的权限,您可以在其中看到网站的信息并显示允许通知,但在高级设置中,它会显示block
并显示消息“已阻止保护你的隐私“我并不完全确定这是什么意思。
if(Notifications.permission == "default"){
Notification.requestPermission()
.then(permission => {
console.log(`Permission given is: ${permission}`);
});
}
else{
console.log("Notification permission is: ${Notification.permission}`);
}
此代码的结果为Notification permission is: denied
,表示执行了else
语句,但是给出了权限,就好像已经请求了权限一样,拒绝了请求的答案。
有人能解释为什么会这样吗?
答案 0 :(得分:2)
我发现问题来自加载没有TLS https
的网站,使得Chrome中的某些功能被设计禁用..
我无法更早地解决这个问题,因为我正在使用的主机测试是使用0.0.0.0
而不是localhost
来访问的,而`
就是Chrome功能列表中的功能