好烦吃不胖 2021-07-14 09: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 10:16
    关注

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    Aganstrong 2021-07-14 10:17

    WebSocket 可以由服务器给客户端推送消息,http不行

    回复
    好烦吃不胖 回复 Aganstrong 2021-07-14 11:05

    额我已经知道了。我问的其实不是这个

    回复
编辑
预览

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 传人记程序做的plc 485从机程序该如何写
  • ¥15 已知手指抓握过程中掌指关节、手指各关节和指尖每一帧的坐标,用贝塞尔曲线可以拟合手指抓握的运动轨迹吗?
  • ¥50 libwebsockets 如何添加其他socket事件回调
  • ¥50 实现画布拖拽算子排布,通过flink实现算子编排计算,请提供思路
  • ¥15 esium自定义材质拉伸问题
  • ¥15 cmake+mingw使用<mysqlx/xdevapi.h>报错
  • ¥15 eNSP中防火墙的使用
  • ¥15 关于#mlnet#的问题:mlnet相关请求(语言-c#)
  • ¥15 lvgl7.11怎么做出文字被选中的效果
  • ¥50 如何快速查看手机目标app的主要服务器ip
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部