Chrome中开发Notification遇到的问题

项目开发中使用了HTML5新特性(现在应该不算新了 = =)window.Notification推送。

关于开发的文章很多,就不再赘述,只记录一下遇到的问题。


//消息推送

function Push() {

    if (!!window.Notification) {

        if (Notification.permission === 'granted') {

            return true;

        } else if (Notification.permission === 'denied') {

            return false;

        } else {

            Notification.requestPermission().then(function (permission) {

                if (permission === 'granted') {

                    return true;

                } else if (permission === 'denied') {

                    return false;

                }

            });

        }

    } else {

        return false;

    }

}

在本地调试时没有问题,到使用域名访问就出现了问题。


Notification.permission = 'denied'

没错,不管Chrome权限设置成允许还是询问,结果都是denied,网上搜了一圈没有找到解释,然后跑去调试其他网站。

最后结论:

Chrome上对http协议默认Notification.permission = 'denied',想要愉快的推送消息就要使用https协议!

你可能感兴趣的:(Chrome中开发Notification遇到的问题)