使用 Javascript 将数据/有效负载发送到 Google Chrome 推送通知

2024-04-02

我正在研究 Google Chrome 推送通知,并尝试将有效负载发送给 google Chrome 工作人员,但是我不知道如何接收此有效负载。

我有一个 API 可以在数据库中创建和保存通知,我需要通过以下方式发送值:https://android.googleapis.com/gcm/send并在worker.js上接收

这是我的worker.js

    self.addEventListener('push', function(event) {
      var title = 'Yay a message.';
      var body = 'We have received a push message.';
      var icon = '/images/icon-192x192.png';
      var tag = 'simple-push-demo-notification-tag';

      event.waitUntil(
        self.registration.showNotification(title, {
          body: body,
          icon: icon,
          tag: tag
        })
      );
    });

这就是我对 GCM 的称呼

curl --header "Authorization: key=AIzaSyDQjYDxeS9MM0LcJm3oR6B7MU7Ad2x2Vqc" --header  "Content-Type: application/json" https://android.googleapis.com/gcm/send -d "{ \"data\":{\"foo\":\"bar\"}, \"registration_ids\":[\"APA91bGqJpCmyCnSHLjY6STaBQEumz3eFY9r-2CHTtbsUMzBttq0crU3nEXzzU9TxNpsYeFmjA27urSaszKtA0WWC3yez1hhneLjbwJqlRdc_Yj1EiqLHluVwHB6V4FNdXdKb_gc_-7rbkYkypI3MtHpEaJbWsj6M5Pgs4nKqQ2R-WNho82mnRU\"]}"

我试图得到event.data但是,这是未定义的。

有人有什么想法或建议吗?


不幸的是,这似乎是一个预期行为 http://updates.html5rocks.com/2015/03/push-notificatons-on-the-open-web:

Chrome 中当前 Push API 实现的一个缺点是 您无法通过推送消息发送有效负载。不,没什么。这 这样做的原因是,在未来的实施中,有效负载将具有 在发送到推送消息之前在您的服务器上进行加密 端点。这样,无论推送提供商是什么,端点都会 无法轻松查看推送负载的内容。这也是 防止其他漏洞,例如 HTTPS 验证不佳 您的服务器和服务器之间的证书和中间人攻击 推送提供商。但是,尚不支持这种加密,因此在 同时您需要执行获取请求来获取信息 需要填充通知。

如上所述,解决方法是在收到推送后联系后端并获取第 3 方服务器上存储的数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Javascript 将数据/有效负载发送到 Google Chrome 推送通知 的相关文章

随机推荐

  • 为什么我的应用程序从本地化资源中获取错误的字符串?

    我创建了三个本地化文件 en ru uk 我看到问题应用程序可以得到一些字符串正确和一些字符串错误 这是什么意思 例如 一种布局在其工作过程中可以包含多个语言环境 而不是一个语言环境 这是错误的 我看到一些用户通过添加几行代码来解决这个问题
  • 什么更快?结构体数组或数据表

    我正在使用 LinqToSQL 处理来自 SQL Server 的数据 并将其转储到 iSeries 服务器中以进行进一步处理 更多详细信息请点击此处 https stackoverflow com questions 2410466 sp
  • GC 会从元空间收集垃圾吗?

    我一直认为垃圾收集器只清除堆 现在我也这么认为 在java 8中permGen被删除并被Metaspace取代 据我了解元空间是垃圾收集的 https stackoverflow com a 24075360 2674303 https s
  • 在Python交互窗口VSCode中交换shift-enter和回车

    In the interactive window in vscode you press shift enter to run the code you just typed and enter to go to the next lin
  • 为什么compareTo返回一个整数

    我最近在一个 SO 聊天中看到了一个讨论 但没有明确的结论 所以我最终在那里询问 这是出于历史原因还是与其他语言的一致性 在查看签名时compareTo各种语言 它返回一个int 为什么它不返回枚举 例如 在 C 中我们可以这样做 enum
  • 创建对象的数组列表

    如何用对象填充 ArrayList 并且其中的每个对象都不同 ArrayList
  • Kafka 0.8,是否可以使用java代码创建带有分区和复制的主题?

    在 Kafka 0 8beta 中 可以使用下面提到的命令创建主题here http kafka apache org 08 quickstart html bin kafka create topic sh zookeeper local
  • 如何每隔 n 个字符或最近的前一个空格分割字符串

    我想每 15 个字符 包括空格 插入一个换行符 我目前正在使用下面的正则表达式 它在某种程度上起作用 但它占用了单词后最近的空格 并且我想要最近的前一个空格 有任何想法吗 const split str replace s S 15 g 1
  • 拆分 ng 重复项?

    简单的问题 如果我的控制器中有这个 scope somedata Item 1 Item 2 set from something else 有没有办法在 ngRepeat 表达式中分割我的视图的一些数据 就像是 div item div
  • ApiController Post 中的 Async 和 Await

    我仍然不太清楚 net 4 5 中的 async 和 wait 到目前为止 我想我明白了等待 将函数 在其右侧 放在单独的线程上 将执行返回给当前函数的调用者 但会 劫持 当前函数代码的其余部分 直到等待 异步 函数完成 如果我误解了什么
  • 当前上下文中不存在名称“...”

    我的里面有一个清单Main 我正在尝试从变量中将一个项目添加到该列表中 但它抛出了错误 名称 dogList 在当前上下文中不存在 在我的里面addDog 方法 dogList Add 由于上述原因无法正常工作 namespace Dogg
  • postgresql 的 mysql_insert_id 替代品

    有没有替代方案mysql insert id PostgreSQL 的 php 函数 大多数框架通过查找 ID 中使用的序列的当前值来部分解决问题 但是 有时主键不是串行列 从 PostgreSQL 的角度来看 用伪代码来说 insert
  • Android 中的上传和下载速率分析[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在尝试开发一个 Android 应用程序来测量网络的上传和下载速度 我可能需要每 2 秒左右运行一次并对其进行分析 SpeedTe
  • return Json 函数没有更新我的下拉列表

    我有一个包含填充下拉列表的视图 我添加了一个按钮 以便用户可以在 jquery 模式中添加新的下拉列表值 因此当用户单击添加新的下拉列表值时 我想刷新下拉列表 但目前没有任何更新 这是我对下拉列表的看法 model Communique M
  • 调用方法出错,启动jvm失败

    我正在使用 javafx v8 0 40 开发桌面应用程序 我用inno 5创建了一个exe文件 当我在计算机中运行exe文件时 它已安装并运行 没有任何问题 另一方面 当我尝试在其他计算机上安装并运行它时 在安装结束时 会弹出窗口对话框
  • 创建文件系统“驱动程序”

    我想为 Windows 物理磁盘上的自定义文件系统创建一个 驱动程序 我不完全知道解释它的最佳方式 但该设备已经具有适当的驱动程序以及 Windows 与之通信的所有内容 但我希望用户能够将设备插入到他们的电脑 将其显示在 我的电脑 中 并
  • 调用 didEnterBackground 后是否可以在主线程上执行某些操作?

    首先 如果您认为我的问题是虚拟的 我想说声抱歉 我是 iOS 和多线程的新手 只是想了解事情是如何发生的 据我所知didEnterBackground是 iOS 在应用程序挂起之前调用的最后一个函数 应用程序有大约 5 秒的时间从中返回 否
  • 用不均匀向量列表中的正值替换正表值

    背景 我最近问这个问题 https stackoverflow com questions 72899527 replacing a subset of table values with a list of vectors 然而 我使示例
  • 在 Excel 中打开特定电子表格的 win cmd 是什么?

    我知道您可以从 win cmd 行打开 Excel 文件 但是如何使用 win cmd 打开该文件中的特定电子表格呢 将以下代码粘贴到文本编辑器 记事本 写字板 Word ETC 例如 使用 vbs 扩展名保存文件 ExcelSheet2
  • 使用 Javascript 将数据/有效负载发送到 Google Chrome 推送通知

    我正在研究 Google Chrome 推送通知 并尝试将有效负载发送给 google Chrome 工作人员 但是我不知道如何接收此有效负载 我有一个 API 可以在数据库中创建和保存通知 我需要通过以下方式发送值 https andro