首页 > 解决方案 > 未捕获(承诺)错误:InvalidStateError:将我的 React 客户端连接到 Spring websocket 服务器时

问题描述

在尝试将我的 React 客户端连接到 Spring Boot Web 套接字服务器时。我在套接字连接时收到此错误,但似乎消息已发送。我完全不知道这里发生了什么,有人可以解释一下并提出解决方案。

        configureSocket = async (channel_id) => {
        var socket = new socketClient(SERVER+'/chat')
        var stompClient = stompjs.over(socket)
        stompClient.connect({}, (frame)=>{
            console.log("Connected to: "+frame)
            stompClient.subscribe("/chat/messages/"+channel_id, (response) => {
                let data = JSON.parse(response.body)
                console.log(data)
            } )
        })
        this.socket = socket
        this.stompClient = stompClient
        
    }

    handleSendMessage = async (channel_id, text, from) => {
        await this.configureSocket(channel_id);
        this.stompClient.send("/app/chat/"+channel_id, {}, await JSON.stringify({
            'from': from, 
            'message': text
            }))
        }

浏览器的参考图片

标签: reactjsspring-bootwebsocketsockjs

解决方案


推荐阅读