好烦吃不胖 2021-07-14 17:55 采纳率: 50%
浏览 20
已采纳

springwebsocket和http的区别是啥?

 @MessageMapping(GlobalConsts.HELLO_MAPPING)
    @SendTo(GlobalConsts.TOPIC)
    public ServerMessage greeting(ClientMessage message) throws Exception {
        // 模拟延时,以便测试客户端是否在异步工作
        Thread.sleep(1000);
        return new ServerMessage("Hello, " + HtmlUtils.htmlEscape(message.getName()) + "!");
    }

上边,服务端监听MessageMapping里面的url,然后通过SendTo把消息响应到前端对应的事件,这种方式还是需要客户端来触发,后端才能响应一个事件,感觉和http差别不大,除了它能发送给多个客户端。 如果客户端不给一个触发动作,后端是不是就不能主动发消息到前端了? 这和我理解的全双工通信不一样呢。我先在的需求就是后端如何主动发消息给客户端(客户端不主动发消息的前提)? 比如我有个需求,就是后端有个数据库操作,插入数据后我想通知前端拉取新数据,如何实现啊?

  • 写回答

1条回答 默认 最新

  • Aganstrong 2021-07-14 18:16
    关注

    HTTP是单向的,客户端发送请求,服务器发送响应。
    WebSocket是双向的,在客户端-服务器通信的场景中使用的全双工协议
    它们是两种不同的协议

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已采纳回答 7月14日
  • 创建了问题 7月14日

悬赏问题

  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧
  • ¥15 #MATLAB仿真#车辆换道路径规划