当我使用以下选项配置socket-io时: {url:'ws:// localhost:8888',选项:{path:'/ chatws',传输方式:['websocket'],reconnectionAttempts:'3'}}
我收到以下错误 WebSocket与'ws:// localhost:8888 / chatws /?EIO = 3&transport = websocket'的连接失败:WebSocket握手期间出错:意外的响应代码:501
如果我使用其他不添加任何参数的框架,那么它将起作用。
如何从网址中删除EIO和所有查询参数?
答案 0 :(得分:0)
事实并非如此。 当您仅实现基于websocket的传输时,需要在两侧进行配置。默认情况下,socket.io尝试使用长轮询来建立连接。
服务器端实现:
const express = require('express')()
const server = require('http').createServer(express)
const io = require('socket.io')(server,{transports:['websocket']})
客户端的困惑:
import io from 'socket.io-client'
const socket = io('http://localhost:8080',{transports: ['websocket']})
这对我有用!