【发布时间】:2015-10-27 07:43:16
【问题描述】:
我正在使用 Spring WebSockets 开发 WebSocket 消息传递后端,它使用 SockJS + STOMP 协议。不使用普通 WebSockets 的原因是因为我需要利用 SockJS 在 Spring WebSockets 中提供的安全集成以及 SockJS 的其他简洁功能,例如房间、订阅等。我想知道这是否是一个不错的选择以便移动(iOS 和 Android)和 Web 客户端应用程序可以轻松连接到后端服务器并执行消息传递。如果是,那么我可以为 iOS 和 Android 使用哪些库。
在SockJS GitHub page 上,他们还列出了可用的客户端库,但没有 iOS 或 Android。所以,我想知道 SockJS 是否值得使用。
我发现 iOS 客户端 Primus-Objc (GitHub page) 库声称他们可以连接到 native WebSockets, Socket.IO, SockJS or perhaps engine.io.,这是真的吗?如果这是真的,那图书馆的质量怎么样?
如果可以在背面使用 SockJS,那么是否也可以显示 iOS 和 Android 的示例代码,以便我可以在移动设备上进行概念验证?
如果 SockJS 对我来说不是一个好的选择,那么它是否比使用 Socket.io + Node.js(使用 JavaScript)构建我的消息传递应用程序更好。在我看来,Socket.io 拥有 iOS (official library by Socket.IO guys) 和 Android (official library by Socket.IO guys) 所需的所有客户端库。
另一种选择是使用 Netty-Socket.io 库并手动构建每个端点,而无需 Spring Framework(我正在考虑使用)的任何帮助,但我必须解决一个小挑战,那就是安全性。 Somebody actually already tried to do it (the same author asking question on the official Netty-Socket.IO Github page) 但看起来他还没有运气解决它。
【问题讨论】:
-
参考此博客elabs.se/blog/…
-
为什么不简单地使用 cometd?它也支持 Android...
-
如果你想要相关的cometd代码,请告诉我。我已经为我的项目实施了 cometd。
-
你能找到这个问题的答案吗?任何与 SockJS 后端配合良好的 Android 客户端?
标签: java android ios spring spring-websocket