有关safari配置的OneSignal Web推送通知不起作用

Set*_*Lar 5 safari macos web-push onesignal

我正在通过阅读他们的文档来设置OneSignal的Web推送通知.下面的代码块是我的配置示例

<script>
    var OneSignal = window.OneSignal || [];
    OneSignal.push(["init", {
        appId: "my-app-id",
        safari_web_id: 'my-safari-web-id',
        autoRegister: false,
        notifyButton: {
            enable: true /* Set to false to hide */
        },
    }]);
</script>
Run Code Online (Sandbox Code Playgroud)

它适用于Google Chrome和Firefox.但是在safari上不起作用,当我点击订阅通知按钮时,我得到了如下错误

Safari错误日志

我的配置出了什么问题?

我使用safari版本10.0.1(12602.2.14.0.7)

Web*_*ter 0

尝试将以下代码粘贴到控制台中并检查您收到的错误

window.safari.pushNotification.requestPermission(OneSignal._API_URL + 'safari', OneSignal.config.safari_web_id, {app_id: OneSignal.config.appId}, function(response) {
  console.warn('pushNotification.requestPermission Safari Registration Result:', response);
});
Run Code Online (Sandbox Code Playgroud)

如果您的控制台显示“推送通知提示已被禁用”, 请按照以下步骤操作

  1. 转到菜单 Safari 中的首选项
  2. 前往通知
  3. 验证允许网站请求发送推送通知的权限是否已选中