websocket整合rabbitMQ——实现消息推送
2021-02-17 10:19
标签:get 访问 set queue 推送 自己 成功 component bsp 一、实现功能:当前页面点击请求后,另一个页面立即收到一条消息,用springboot+websocket+rabbitMQ实现。 二、java代码: 1、先在pom里导入需要的坐标 2、编写websocket配置类(这个配置除了监听队列的名字外,以后回来直接Ctrl+C) 3、rabbitMQ创建队列与交换机绑定,这里不记录了,主要是在里面加上这一条 二、Html代码:注意这里是接收页面的js代码!!! 四、总结: 到这里最核心的东西已经搭建完了,但肯定没有写全,不是自己不想写,因为一些简单枯燥的东西不必要罗列出来,否则杂多不知其意。 所以放在最后用最简洁的语言,描述大量的简单代码是最高效的: websocket整合rabbitMQ——实现消息推送 标签:get 访问 set queue 推送 自己 成功 component bsp 原文地址:https://www.cnblogs.com/shengxie/p/12955838.html
lombok@Slf4j
@ServerEndpoint("/websocket")//把当前类标识成一个WebSocket的服务端,值是访问的URL地址
@Component//spring注入
public class WebSocketServer {
//与某个客户端的连接会话,需要通过它来给客户端发送数据
private Session session;
//存放session的集合,很重要!!
private static CopyOnWriteArraySet
//websocket 放入到spring容器
@Bean
public ServerEndpointExporter serverEndpointExporter() {
return new ServerEndpointExporter();
}
script type="text/javascript">
//设置一个变量,用于存储websocket
var socket = null;
//判断当前浏览器是否支持WebSocket
if (‘WebSocket‘ in window) {
//alert(‘当前浏览器支持WebSocket‘)
//实现化WebSocket对象,指定要连接的服务器地址与端口 建立连接
//这个url必须写对!ws固定的,ip是自己配置的,路径是自己命名的
socket = new WebSocket("ws://127.0.0.1:7777/websocket");
}
else {
alert(‘当前浏览器 Not support websocket‘)
}
//连接成功(回调方法)
socket.onopen = function () {
alert("Socket 连接成功");
}
//连接错误(回调方法)
socket.onerror = function () {
alert(‘连接出错‘)
//可尝试刷新页面--循环
//window.location.reload();
};
//接收消息(回调方法)
socket.onmessage = function (event) {
alert("你收到了一条返回消息:"+event.data);
}
//连接关闭(回调方法)
socket.onclose = function () {
alert("连接关闭");
}
//窗口关闭,关闭websocket(否则server端会抛异常)
window.onbeforeunload = function () {
socket.close();
}
script>
上一篇:Thinkphp相关总结