【问题标题】:how to get websocket response with spring+stomp+sockjs如何使用 spring+stomp+sockjs 获得 websocket 响应
【发布时间】:2015-01-19 08:11:01
【问题描述】:

我使用spring+stomp向websocket客户端广播消息,但是我怎么知道结果是成功的呢?我使用setSendTimeout方法并catch Exception来检测convertAndSend是否成功,但是不起作用! java代码

@Resource
private SimpMessagingTemplate simpMessagingTemplate;

@RequestMapping("/test")
public String test() {
    simpMessagingTemplate.setSendTimeout(1);
    String result;
    try {
        simpMessagingTemplate.convertAndSend("/topic/test", "haha");
        result = "success!";
    } catch (Exception e) {
        result = "failed! \n" + e.toString();
    }
    return result;

}

js代码

<script src="/lib/websocket/sockjs.min.js"></script>
<script src="/lib/websocket/stomp.min.js"></script>
<script>
  var socket = new SockJS("/kefu");
  var client = Stomp.over(socket);
  client.debug = function (str) {
  };

  client.connect(
          {},
          function () {
            client.subscribe('/topic/test', function(msg) {
              console.log(msg);
            });
          },
          function (error) {
            console.log(error);
          }
  );

</script>

【问题讨论】:

    标签: java spring stomp sockjs


    【解决方案1】:

    WebSockets 是 TCP over HTTP 的抽象实现。 TCP 是可靠的,并保证将数据包传递给接收方。因此,您无需担心从应用程序控制器到前端 Javascript 的传递。

    【讨论】:

    • 感谢您的回答!连接断开后我没有检测到,然后我调用convertAndSend方法,我不知道客户端是否收到我的消息!
    猜你喜欢
    • 2015-04-02
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 2016-11-09
    • 2016-07-04
    • 2018-06-18
    • 2017-10-04
    • 2017-08-06
    相关资源
    最近更新 更多