利用websocket搭建网页即时通讯(demo)

先前已经搭建了websocket的网页聊天室,但是不能实现一对一通信,在上面例子中可以实现

过一对一的通信

过程中遇到的 问题 websocket中获取httpsession : 本文中使用springboot搭建服务器,上述连接中的类需要配置到springboot 环境中 该问题未解决。

demo中采用另外一种解决 方式:

在服务器类上加上一下注解

@ServerEndpoint(value = "/websocket/signalmonitor/{nickname}")

start方法入参格式如下:

@OnOpen
    public void start(@PathParam("nickname")String nickname, Session session) {
    }

前段调用参数如下:

Chat.initialize = function() {
        if (window.location.protocol == http:) {
            Chat.connect(ws:// + window.location.host
                    + /websocket/websocket/signalmonitor/tony);
        } else {
            Chat.connect(wss:// + window.location.host
                    + /websocket/websocket/signalmonitor/tony);
        }
    };

基于路径的参数传递,服务器接受到的就是tony。

经验分享 程序员 微信小程序 职场和发展