c# - 如何使用 C# 获取 Web 推送通知的 Safari 订阅(deviceToken)
问题描述
我似乎找不到任何关于如何在 .Net 中为 Safari OSX/mac 进行网络推送的示例,更不用说库了。使用 APNS发送通知的材料很多,但首先很难理解如何获取设备令牌。据我了解,最新版本的 Chrome/Firefox/Opera 都支持 Windows、Android 和 OSX 上的 Service Worker 和 Push Api。另一方面,Safari 浏览器(在 mac 上)不需要也需要通过 APNS。iOS 手机目前对网络推送的支持为零
解决方案
我找到的唯一说明是here。
基本上,您必须:
- 注册 Apple 的专有服务以获得您服务的唯一 ID
- 设置一个 ZIP 和几个 JSON 文件,其中包含描述您的服务的数据并将它们托管在您的服务器上
- 在客户端,功能检测并调用 window.safari.pushNotification.requestPermission(它会向您的服务器发送一个 POST 请求,其中包含您稍后需要的令牌)
- 使用您的通知的 JSON 向 Apple 的服务器发出 POST 请求(即使阅读文档,我也无法确定是哪个 URL,抱歉)
因此与标准流程基本相同,但完全专有。
推荐阅读
- mysql - 有没有更优雅的方法来查询多个 OR 和 AND 上的多对多表?
- java - Eclipse - “不兼容的 JVM。JVM 版本 1.8.0_261 不适合此产品。版本:需要 11 或更高版本”
- c++ - 是否可以保证一个类型的多个 type_index 实例比较相等?
- python - Pandas:从带有猜测分隔符的“tsv”文件中提取的不规则 dataframe.colums
- java - 如何使用 kotlin 检测 java 文件方法体的结尾?
- qt - 如何判断 QPlainTextEdit 是否滚动?
- javascript - 问题.js | 修复 applyForce 的更新问题
- flutter - Flutter - Clipping Path 曲线非常锐利
- java - 找不到书面方法 java.util.function 的符号
- outlook - NVDA 未在 Outlook 中读取带有背景图像的文本