Socket.io 不断尝试建立连接
Socket.io keeps trying to establish a connection
客户端正在使用以下方式连接到我的服务器...
var socket = io.connect('http://localhost:52805');
在服务器上,我正在使用...
建立此连接
// Establish a connection with a WebSocket.
io.on("connection", socket => {
console.log("Socket Connection");
...
现在,如果我检查服务器端的控制台,我会在控制台中定期收到以下信息...
Socket Connection
Socket Connection
Socket Connection
Socket Connection
...
它一直打印出 套接字连接,即使我没有刷新客户端。
这是什么原因造成的,这正常吗?如果没有,我该怎么做才能防止这种情况发生?客户端一直轮询服务器是否正常?
编辑
作为额外说明,我使用 Socket.io 作为带有 Hapi.js 的插件...
const sockets = require("./src/Playlist/index");
// Define the server.
const server = new Hapi.Server({
port: process.env.PORT,
routes: {
cors: true
}
});
// Socket.io plugin.
await server.register(sockets);
// Start the server.
await server.start();
其中sockets
只是对上面提到的io.on("connection")
的引用。
你试过用 server.listener
初始化 io 吗:
const Hapi = require('hapi');
const server = new Hapi.Server();
const io = require('socket.io')(server.listener); // <--- THIS
...
io.on('connection', function (socket) {
...
});
...
server.start();
客户端正在使用以下方式连接到我的服务器...
var socket = io.connect('http://localhost:52805');
在服务器上,我正在使用...
建立此连接// Establish a connection with a WebSocket.
io.on("connection", socket => {
console.log("Socket Connection");
...
现在,如果我检查服务器端的控制台,我会在控制台中定期收到以下信息...
Socket Connection
Socket Connection
Socket Connection
Socket Connection
...
它一直打印出 套接字连接,即使我没有刷新客户端。
这是什么原因造成的,这正常吗?如果没有,我该怎么做才能防止这种情况发生?客户端一直轮询服务器是否正常?
编辑
作为额外说明,我使用 Socket.io 作为带有 Hapi.js 的插件...
const sockets = require("./src/Playlist/index");
// Define the server.
const server = new Hapi.Server({
port: process.env.PORT,
routes: {
cors: true
}
});
// Socket.io plugin.
await server.register(sockets);
// Start the server.
await server.start();
其中sockets
只是对上面提到的io.on("connection")
的引用。
你试过用 server.listener
初始化 io 吗:
const Hapi = require('hapi');
const server = new Hapi.Server();
const io = require('socket.io')(server.listener); // <--- THIS
...
io.on('connection', function (socket) {
...
});
...
server.start();