利用websocket同账号登录WEB系统自动T除前一个登录者并且页面弹出消息提示

本文介绍了一个使用WebSocket实现实时检测并处理同一账号多处登录的情况。当有新设备登录同一账号时,旧设备的会话会被终止,并通过WebSocket消息通知用户重新登录。代码示例包括前端JavaScript监听WebSocket消息,以及后端Java处理连接、关闭和错误事件,确保会话一致性。
摘要由CSDN通过智能技术生成
以下为websocket  js代码

var userId = $('#userId').val();
$(function () {
    if (userId != null && userId != '') {
        webSocketMsg();
    }
});
// 获取WebSocket推送的数据
function webSocketMsg() {
    //判断浏览器是否支持websocket
    if (window.WebSocket) {
        var websocket = new WebSocket(webSocketUrl + "/systemWebsocket?" + userId);
        websocket.onerror = function (event) {
            onError(event);
        };
        websocket.onopen = function (event) {
            onOpen(event);
        };
        websocket.onmessage = function (event) {
            console.log("收到消息啦:" + event.data);
            var objTemp = JSON.parse(event.data);
            var imType = objTemp.type;
            var obj = objTemp.messageObj;
            if ("KickOut" == imType) {
                bootbox.dialog({
                    message: "您的账号在另一台设备上登录,您被挤下线,请重新登录!",
                    buttons: {
                        "success": {
                            "label": "确定"
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值