我开始创建一些基于此的代码,用于从PHP发送推送通知.
但是现在我已经知道有一个新的API利用HTTP/2并在响应中提供反馈,我试图弄清楚我需要做些什么来获得反馈.
我无法找到任何教程或示例代码来指导我(我猜因为它是如此新的).
是否可以使用stream_socket_client()与新提供者API连接到APNS 的方法?我如何获得反馈?我fwrite($fp, $msg, strlen($msg))现在回来的只是一个数字.出于所有意图和目的,您可以认为我的代码与基于我的代码的SO问题中的代码相同
谢谢!
我作为测试做的是:
我做了示例应用程序,我启用了推送通知并实现了处理它们的机制.
我正在测试向我的应用程序发送静默推送通知curl,这非常有效.我测试的是:
curl -v -d'{"aps":{"content-available":1}}'--cert"/Users/me/Desktop/mycert.pem":" - " - H"apns-topic:com.domain .name"--http2 https://api.development.push.apple.com/3/device/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
作为Apple的回答,我总是看到以下内容:
<HTTP/2.0 200
<apns-id:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX
根据Table 6-4官方文档的说法,这很好并且符合预期:https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/APNsProviderAPI.html
现在我从我的设备中删除该应用程序,然后我重试相同的请求,希望我将开始获取状态代码410和信息The device token is no longer active for the topic.然而,这种情况并没有发生,我总是得到200状态代码,就像一切都很好,推送令牌仍然可用.
删除后1 - 1.5小时,我仍然得到200答案.
您是否知道Apple刷新推送令牌列表的频率以及何时可以最终开始获取410?而且 - 在生产环境之外测试应用程序时,410状态(并且Instant Feedback通常)是可测试的吗?
提前感谢任何答案.
干杯