我在Node.js上同时使用socket.io(服务器API和客户端API)作为客户端和服务器。如docs中所指定,这是可能的。除了Express之外,我没有使用任何特定的框架,而是遵循official guide来使用socket.io。
在服务器端,我有:
const express = require("express");
const app = express();
const http = require("http");
server = http.Server(app);
const io = require("socket.io")(server) //server listens on "http://localhost:3001
io.on("connection", socket => {
console.log("server says: someone connected");
});
在客户端,我有:
const io = require("socket.io-client")("http://localhost:3001");
io.on("connect", () => {
console.log("client says: connected");
});
直到这里一切都正常工作...现在,当添加名称空间时,似乎不再起作用。我遵循了official guide,并得到了以下内容:
在服务器端,我有:
const express = require("express");
const app = express();
const http = require("http");
server = http.Server(app);
const io = require("socket.io")(server) //server listens on "http://localhost:3001
const nsp = io.of('/my-namespace');
nsp.on("connection", socket => {
console.log("server says: someone connected");
});
在客户端,我有:
const io = require("socket.io-client")("http://localhost:3001");
const socket = io('/my-namespace');
socket.on("connect", () => {
console.log("client says: connected");
});
但是在引入名称空间之后,似乎没有任何作用...我想念什么?
谢谢我完全迷路了