SSM框架下使用websocket实现后端发送消息至前端

本篇文章本人是根据实际项目需求进行书写的第一版,里面有些内容对大家或许没有用,但是核心代码本人已对其做了红色标注。文章讲解我将从maven坐标、HTML页面、js文件及后端代码一起书写。


一、maven坐标

<!-- WebSocket配置开始-->
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-websocket</artifactId>
    <version>${spring.version}</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-messaging</artifactId>
    <version>${spring.version}</version>
</dependency>
<!-- WebSocket配置结束-->

二、HTML页面

<!--消息框开始&ndash;-->
 <!-- 弹窗&ndash;&gt-->
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <link rel="stylesheet" type="text/css" href="${basePath}/static/css/home/index.css">
    <script src="${basePath}/static/js/common/jquery-1.8.3.min.js"></script>
    <script src="${basePath}/static/js/home/index.js"></script>
    <script src="${basePath}/static/css/layui/layui.js"></script>
    <title>后台管理系统</title>
</head>
<body>
 <input type="hidden" value="${userId}" id="userId">
 <input type="hidden" value="${cnName}" id="cnName">
 <div class="tanchuang">
     <div class="tanchuangClose"><span class="tanchuangCloseBtn">关闭</span></div>
     <h6>消息提示:</h6>
     <div id="messages"></div>
 </div>
 <!--消息框结束&ndash;-->
<script src="${basePath}/static/js/home/index.js"></script>
<script src="/static/js/webSocket.js"></script>
</body>
</html>

三、js文件(websocket.js)

var websocket;
// var host = document.location.host;
var userId = $("#userId").val(); // 获得当前登录人员的userName
var cnName=$("#cnName").val();
// alert(username)
//判断当前浏览器是否支持WebSocket
if ('WebSocket' in window) {
    // alert("浏览器支持Websocket")
    if(websocket ==null){
//以下用的是ip路径,那么在本地启动项目时也需要使用ip地址进行访问
        websocket = new WebSocket("ws://192.168.2.122:8080/webSocket/"+userId+"/"+cnName);
    }
} else {
    alert('当前浏览器 Not support websocket')
}
//连接发生错误的回调方法
websocket.onerror = function() {
    // setMessageInnerHTML("WebSocket连接发生错误");
};
//连接成功建立的回调方法
websocket.onopen = function() {
    // alert("WebSocket连接成功")
    // setMessageInnerHTML("WebSocket连接成功");
}
//接收到消息的回调方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值