我使用这个Ruby代码从上不成功推的APN接收错误:连接与发展督促的APN证书
if IO.select([ssl], nil, nil, 5)
read_buffer = ssl.read(6)
process_error_response(read_buffer)
end
我注意到一个奇怪的情况IO.select是非零但的read_buffer返回空字符串。经过一些调试后,我意识到,如果您使用开发APNs证书连接到gateway.push.apple.com,会发生这种情况,如果您使用生产证书连接到gateway.sandbox.push.apple.com,则显然会发生同样的情况。
有没有什么办法可以通过编程方式检测到这种情况,例如,如果您获得用户的推送证书并告知其生产/开发,但无法真正在Apple开发人员网站上验证此事实?我原以为连接会被拒绝,但它似乎是被创造出来的,但却处于部分破裂的状态。