将 Socket-Io 与反应一起使用
Using Socket-Io with react
我正在尝试将名称空间与 socket-io 服务器和反应客户端一起使用。
客户
const [socket, setSocket] = useState(null);
useEffect(() => {
const testSocket = io(`http://localhost:3001/poker`);
console.log(testSocket)
setSocket(testSocket);
return () => testSocket.close();
}, [setSocket]);
服务器
io.on("connection", (socket) => {
console.log('connection');
});
const test = io.of("/test");
test.on('connection', socket => {
console.log("here2");
});
当我执行此操作时,客户端 returns 上的 console.log()
Object { connected: false, disconnected: true, receiveBuffer: [], sendBuffer: [], ids: 0, acks: {}, flags: {}, io: {…}, nsp: "/test", subs: (4) […] }
在服务器端,它每隔几秒就会说“连接”,但它永远不会触发命名空间。
浏览器每隔几秒发送一次的请求有一个轮询传输而不是一个套接字,所以它可能只是没有连接,但我不明白为什么,有什么想法吗?
在客户端设置 {transports: ["websocket"]} 似乎已经成功了。
我正在尝试将名称空间与 socket-io 服务器和反应客户端一起使用。
客户
const [socket, setSocket] = useState(null);
useEffect(() => {
const testSocket = io(`http://localhost:3001/poker`);
console.log(testSocket)
setSocket(testSocket);
return () => testSocket.close();
}, [setSocket]);
服务器
io.on("connection", (socket) => {
console.log('connection');
});
const test = io.of("/test");
test.on('connection', socket => {
console.log("here2");
});
当我执行此操作时,客户端 returns 上的 console.log()
Object { connected: false, disconnected: true, receiveBuffer: [], sendBuffer: [], ids: 0, acks: {}, flags: {}, io: {…}, nsp: "/test", subs: (4) […] }
在服务器端,它每隔几秒就会说“连接”,但它永远不会触发命名空间。
浏览器每隔几秒发送一次的请求有一个轮询传输而不是一个套接字,所以它可能只是没有连接,但我不明白为什么,有什么想法吗?
在客户端设置 {transports: ["websocket"]} 似乎已经成功了。