使用了socket.io-client和vue-socket.io时都无法连接到服务器,服务器接收到了信息,但是却不能传值和接受值,查询了好多文章也没有得到个确切的答案,所以记录下来方便遇到这个问题同学别耽误太长时间
尝试了一些API,发现是没有规定请求的类型,应该定义下websocket类型
vue-socket.io 如下
const vueSocketIo = new VueSocketIO({ debug: true, connection: `http://${SOCKET_IP}`, vuex: { store, actionPrefix: 'SOCKET_', //为vuex设置的两个前缀 mutationPrefix: 'SOCKET_' }, options: { transports:['websocket'], //仅当通过websocket传输时 默认的,长轮询连接会被首次创建,随后升级到更好的传输方式(比如WebSocket)。如果你喜欢挑战性,这一部分可以被跳过。 怪不得一开始调试后台总说我请求他,我还有点懵 query:{ clientId:3 } }, })
socket.io-client如下
const socket = io(`http://${SOCKET_IP}`,{transports: ['websocket']});
成功建立了websocket连接。