如何接收和处理Chrome通知/推送通知?

meh*_*yer 0 javascript google-chrome push-notification

我只想编写一个小脚本,每当我收到来自浏览器(chrome)的推送通知时,它就会执行 Foo() 操作。我试图在那里找到一些东西,但我发现的只是如何发送所述通知,但我只想接收它们。任何人都可以引导我走向正确的方向吗?

  1. 我不拥有发送通知的后端
  2. 没有前端,它的通知来自浏览器
  3. 我目前正在尝试使用浏览器扩展,但无法访问通知。我不知道浏览器扩展是否是正确的选择,这应该从我最初的帖子中清楚地看出。

Twi*_*her 5

如果问题是关于使用通知 API拦截网页上生成的通知,则此答案解释了如何:在浏览器环境中拦截 HTML5 Web 通知

\n

总而言之,它包括创建一个Proxy作为本机的包装器Notification,以便挂钩 constructor 并执行任意代码。

\n

如果问题是关于拦截推送通知,那么这是不可能的,因为它们基于Service Worker的。您无法连接到服务工作线程,并且无法在不覆盖现有服务工作线程的情况下注册自己的服务工作线程(这将破坏网页),如文档中所述:

\n
\n

如果存在可用的现有服务工作线程,则新版本会在后台安装,但尚未激活\xe2\x80\x94,此时它\n称为等待工作线程。仅当不再加载任何仍使用旧服务工作线程的页面时,才会激活它。一旦没有更多页面需要加载,新的\n服务工作线程就会激活(成为活动工作线程)。

\n
\n