前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >webSocket 发送消息给客户端

webSocket 发送消息给客户端

作者头像
yawn
发布2018-03-14 11:32:53
3.7K0
发布2018-03-14 11:32:53
举报
文章被收录于专栏:osc同步分享-java技术分享站
  1. 在配置websocket代理时使用simpleBroker(简单代理),就不需要使用消息服务器,简单向前端发送消息:
代码语言:javascript
复制
 @Override
public void configureMessageBroker(MessageBrokerRegistry registry) {
    registry.enableSimpleBroker("/client");
}
  1. @SendTo 注解可以将消息发送给所有订阅此地址的客户端;如果不需要将消息发给所有的用户,则可以使用@SendToUser,(如果一个用户在多个浏览器登陆,则会将消息发给所有客户端,如果不需要发送给所有的,可以设置broadcast=false)
代码语言:javascript
复制
    @MessageMapping("/send")
    @SendToUser(destinations = "/client", broadcast = false)
    public String ws(Principal principal, String msg) {

        // 客户端订阅的地址是 /user/client
        // 服务端@SendToUser发送的代理地址是 /client, 地址将会被转化为 /user/{username}/client
        System.out.println(principal);
        System.out.println(msg);

        return msg;
    }
  1. 如果服务端要将消息发送给特定的某一个用户,可以使用SimpleMessageTemplate的convertAndSendToUser方法(第一个参数是用户的登陆名username)
代码语言:javascript
复制
     @MessageMapping("/send")
//    @SendToUser(destinations = "/client", broadcast = false)
    public void ws(Principal principal, String msg) {

        // 客户端订阅的地址是 /user/client
        // 服务端@SendToUser发送的代理地址是 /client, 地址将会被转化为 /user/{username}/client
        System.out.println(principal);
        System.out.println(msg);

        simpMessagingTemplate.convertAndSendToUser("yawn1", "/client", msg);
    }
  1. 客户端订阅代码
代码语言:javascript
复制
var socket = new SockJS("/socket");
var stomp = Stomp.over(socket);
stomp.connect("guest", "guest", function(frame){
    stomp.subscribe("/user/client", function (message) {
        $(".content").html(message.body);
    })
});
  1. 客户端发送代码(客户端发送的地址可以是服务端@MessageMappring设置的地址,也可以是配置的代理地址,后者可以直接将消息发送给订阅者)
代码语言:javascript
复制
$(".send").click(function () {
    stomp.send("/server/send", {}, $(".msg").val());
});
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档