如何发送网络套接字消息从服务器到特定的用户只?
我的 webapp 有 Spring 安全设置并且使用 websocket。我遇到棘手的问题,试图发送消息从服务器到 仅限特定用户。
我从阅读 手册的理解是从我们可以做的服务器
simpMessagingTemplate.convertAndSend("/user/{username}/reply", reply);
而在客户方面:
stompClient.subscribe('/user/reply', handler);
但是我从来没有调用过订阅回调,我尝试了很多不同的方法,但是都没有成功。
如果我发送到 /主题/答复它的工作,但所有其他连接的用户将收到它太。
为了说明这个问题,我在 github: https://github.com/gerrytan/wsproblem上创建了这个小项目
复制步骤:
1)克隆并构建项目(确保您使用的是 jdk 1.7和 maven 3.1)
$ git clone https://github.com/gerrytan/wsproblem.git
$ cd wsproblem
$ mvn jetty:run
2)导航到 http://localhost:8080
,使用 bob/test 或 jim/test 登录
3)按「要求使用者指定讯息」。预期: 一个消息“ hello { username }”显示在旁边的“接收消息给我只”为此用户,实际: 没有收到