1

我想使用 Vert.X 构建一个由 SockJS 提供支持的私人聊天应用程序。我很快就遇到了 SockJS 的限制,因为它的 API 过于简单,而且多路复用似乎不是答案(参见: https ://groups.google.com/d/topic/sockjs/cO7lnH07RCE/discussion )。

EventBus Bridge 会是正确的工具吗?每个客户端绑定一个唯一的地址,VertX server 可以响应,还是不识别就默认忽略?

这是 EventBus Bridge 的意图吗?

启动 SockJSBridge 后是否可以更改许可规则?

随机令牌(UUID?)也可以添加到入站规则“匹配”以模拟会话的工作方式。

这合理吗?或者这是否被广泛使用?

4

1 回答 1

2

EventBusBridge 允许客户端(通过 SockJS 的浏览器)与 EventBus 上的其他订阅者对话。这意味着您可以直接使用服务器端服务或其他客户端发送消息。

您不能动态更改网桥的允许/防火墙规则。但是使用正则表达式和使用 UUID,您应该能够很容易地实现聊天。让我给你举个例子:

服务器侦听 address chat-server。网桥中的出站设置设置为{ "address_re" : "chat-clients\..*" }。每个客户端注册一个处理程序chat-clients.<some_UUID_for_this_client>并告诉服务器将发送给客户端的消息发送到注册地址。

我们在 Scala 中编写了一个聊天模块,您可以将其用作参考。

于 2013-04-11T11:47:18.343 回答