Angular SwPush请求订阅新的或旧的

问题描述

我使用SwPush在Angular应用中处理推送通知。这是代码

export class AppComponent implements OnInit {
  constructor(private swPush: SwPush) { }

  ngOnInit(): void {
    this.initServiceWorker();
  }

  initServiceWorker(): any {
    if (environment.production) {
      if (this.swPush.isEnabled) {
        this.swPush.requestSubscription({
          serverPublicKey: environment.vapid_PUBLIC_KEY
        })
        .then(sub => {
          // send subscription to server
          this.http.post(environment.apiUrl + 'pushnotifications/subscribe',sub).subscribe(response => {
            console.log(response);
          });
        })
        .catch(err => console.error('Could not subscribe to notifications',err));
      }
    }
  }
}

当前,我将订阅存储在数据库中。问题是,在每次刷新页面时,我都会向后端发送一个请求,以验证订阅是否已存在。

问题:

是否可以检查用户是否允许“通知”,或者是否已经在浏览器端(由Angular获得)权限?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)