【发布时间】:2017-04-16 09:26:28
【问题描述】:
我正在尝试在我的后端服务器(Redhat、Tomcat)和 APNs 之间放置一个代理。
用于生成推送通知的库是 Pushy https://github.com/relayrides/pushy
我能够让服务器将推送通知流量发送到 APNs 以外的其他地方,因此调用代理不是问题。
问题: 我使用的 Pushy 版本通过旧的二进制协议 (TCP) 而不是较新版本中使用的 Http/2 与 APNs 通信,由于这种非标准协议,Apache 或其他一些常见的代理选择将不起作用。
问题:
- 有人知道任何代理可以在我的情况下工作吗?
- 如果我必须自己用 Java 编写代码,任何人都有关于 要使用什么库,或者最好的方法是什么?
【问题讨论】:
-
如果您使用二进制协议,那么您可以使用 Socks 代理,但您需要修改 pushy 库。您还可以查看提供前端 APNS 的 REST API 的服务,例如 Urban Airship(或其他)
-
@Paulw11 嗨,保罗感谢您查看此内容。我是否认为修改 pushy 的目的是如此的 pushy 可以调用 Socks 代理而不是 APNs?
-
是的,不幸的是 socks 不是一个透明的代理系统;您需要“socksify”网络代码,以便它知道它正在连接到 socks 代理并发出正确的请求。采用 Apple 的新推送 API 或使用带有 Web 服务接口的推送提供程序会更容易
-
@Paulw11 感谢您的宝贵建议。
标签: java ios proxy apple-push-notifications