Apple 推送通知集成问题
Apple push notification integration issue
之前我总是必须将推送通知证书(p12 文件)提供给服务器开发人员,以便他可以向我的应用程序发送推送通知。
,现在可以不用这些证书
根据 Apple 的说法:
提供商身份验证令牌是您构建的 JSON object,其 header 必须包括:
您用于加密令牌的加密算法 (alg)
从您的开发者帐户获得的 10 个字符的密钥标识符 (kid) 密钥
令牌的声明负载必须包括:
发行者(iss)注册了claim key,其值为您的10个字符的团队ID,从您的开发者帐户中获取
在 (iat) 发布的注册声明密钥,其值表示生成令牌的时间,以自 Epoch 以来的秒数表示,在 UTC
问题是从开发者帐户中获取这些 kid、iss、iat 值的位置?
其实我看过 WWDC 的视频 https://www.youtube.com/watch?v=IDBCTvHrix8,它几乎解释了一切。
1) 对于 kid,您需要 https://developer.apple.com -> 证书、标识符和配置文件 -> APNs 授权密钥 -> 按 + 按钮 -> 选择 Apple 推送通知Authentication Key (Sandbox & Production)(不久前添加)-> 创建后,您将在此项中看到 Key ID(新项将出现在 APNs Auth Key 菜单中)。这是您的孩子价值
2) iss 是您的团队 ID,要获取它,您需要证书、标识符和配置文件 -> 标识符 -> 应用 ID -> 按您的任何应用 ID (如果您没有,则需要为您的应用程序创建一个)-> 您将在 Prefix: 8jkjlj2k 处看到详细信息。这是您的团队 ID,您开发者帐户中的所有应用都将使用相同的 ID。
3) iat : 据我了解,这是服务器开发人员在他这边生成令牌的时间,因此您不需要向服务器提供此值开发商
之前我总是必须将推送通知证书(p12 文件)提供给服务器开发人员,以便他可以向我的应用程序发送推送通知。
,现在可以不用这些证书根据 Apple 的说法:
提供商身份验证令牌是您构建的 JSON object,其 header 必须包括: 您用于加密令牌的加密算法 (alg) 从您的开发者帐户获得的 10 个字符的密钥标识符 (kid) 密钥 令牌的声明负载必须包括: 发行者(iss)注册了claim key,其值为您的10个字符的团队ID,从您的开发者帐户中获取 在 (iat) 发布的注册声明密钥,其值表示生成令牌的时间,以自 Epoch 以来的秒数表示,在 UTC
问题是从开发者帐户中获取这些 kid、iss、iat 值的位置?
其实我看过 WWDC 的视频 https://www.youtube.com/watch?v=IDBCTvHrix8,它几乎解释了一切。
1) 对于 kid,您需要 https://developer.apple.com -> 证书、标识符和配置文件 -> APNs 授权密钥 -> 按 + 按钮 -> 选择 Apple 推送通知Authentication Key (Sandbox & Production)(不久前添加)-> 创建后,您将在此项中看到 Key ID(新项将出现在 APNs Auth Key 菜单中)。这是您的孩子价值
2) iss 是您的团队 ID,要获取它,您需要证书、标识符和配置文件 -> 标识符 -> 应用 ID -> 按您的任何应用 ID (如果您没有,则需要为您的应用程序创建一个)-> 您将在 Prefix: 8jkjlj2k 处看到详细信息。这是您的团队 ID,您开发者帐户中的所有应用都将使用相同的 ID。
3) iat : 据我了解,这是服务器开发人员在他这边生成令牌的时间,因此您不需要向服务器提供此值开发商