尝试使用 APN 推送通知时出现 AuthenticateAsClient 错误
AuthenticateAsClient error when attempting push notification with APNs
我正在为我公司的应用开发推送通知(使用 C#)。我似乎已经解决了这个过程中可能出现的所有问题。我终于可以使用推送通知了,但我仍然有一个无法解决的问题。
我正在使用 gateway.sandbox.push.apple.com
服务进行测试,大部分时间一切正常。但偶尔,我会收到Authentication failed because the remote party has closed the transport stream
。似乎也没有什么可以纠正的。它只是继续失败,直到它再次开始工作。随机失败的调用是:
sslStream.AuthenticateAsClient(APN_SERVICE, localCertCollection, System.Security.Authentication.SslProtocols.TLS, false);
根据 Apple 文档,如果 APN 提供了错误的令牌,APN 将关闭流,但在这种情况下,我知道我使用的是良好的令牌。而且我不会发送大量请求 - 每两分钟只会发送一两个请求。
还有其他人 运行 喜欢这种行为吗?我是否达到了某种 APN 限制?关于可能发生的事情有什么想法吗?
发生了两件事:
首先,我有一些错误的日志记录正在接收 NullReferenceException 并掩盖了真正的异常。
其次,真正的异常表明我正在尝试同时读取多个数据,而 SslStream 不支持。
我正在为我公司的应用开发推送通知(使用 C#)。我似乎已经解决了这个过程中可能出现的所有问题。我终于可以使用推送通知了,但我仍然有一个无法解决的问题。
我正在使用 gateway.sandbox.push.apple.com
服务进行测试,大部分时间一切正常。但偶尔,我会收到Authentication failed because the remote party has closed the transport stream
。似乎也没有什么可以纠正的。它只是继续失败,直到它再次开始工作。随机失败的调用是:
sslStream.AuthenticateAsClient(APN_SERVICE, localCertCollection, System.Security.Authentication.SslProtocols.TLS, false);
根据 Apple 文档,如果 APN 提供了错误的令牌,APN 将关闭流,但在这种情况下,我知道我使用的是良好的令牌。而且我不会发送大量请求 - 每两分钟只会发送一两个请求。
还有其他人 运行 喜欢这种行为吗?我是否达到了某种 APN 限制?关于可能发生的事情有什么想法吗?
发生了两件事:
首先,我有一些错误的日志记录正在接收 NullReferenceException 并掩盖了真正的异常。
其次,真正的异常表明我正在尝试同时读取多个数据,而 SslStream 不支持。