在使用 node.js 和 socket.io 创建 WebSocket 服务器之前,我是使用码头的 WebSockets 新手。但由于不同的要求,我将不得不使用 java WebSocketServlet/WebSocket 并且到目前为止使用 maven、jetty 和 jetty-websocket 插件做得很好。我的问题是,我没有找到任何与 java 解决方案的 socket.io 的 socket.on(event, fn) 实现相媲美的东西。我希望有同样的可能性对从客户端触发的不同事件做出反应,例如“new”、“addthis”、“jointhat”,......将一些数据作为 json 或作为正文中的 POST 参数发送。是否有任何可能或 WebSocket 实现可以与 socket.io 做同样的事情?做这个“通道”的东西,我可以在服务器端实现事件处理?
问问题
1378 次
2 回答
2
WebSocket 规范中没有自定义事件,socket.io 只是遵循自己的协议支持自定义事件 - https://github.com/LearnBoost/socket.io-spec
据我所知,没有支持自定义事件监听的 Java 实现。
但是,使用 Atmosphere,您可以将 socket.io 客户端与 Java Web 服务器一起使用,但我还没有测试过。https://github.com/Atmosphere/atmosphere/wiki/Getting-Started-with-Socket.IO
如果您想直接控制 Jetty 的 WebSocketServlet,您可能想在客户端使用其他库,例如 jQuery Socket。- https://github.com/flowersinthesand/jquery-socket/tree/master/samples/jetty-ws
于 2012-08-05T06:08:06.417 回答