Html Socket.io:仅在连接一个客户端的情况下创建新连接

Html Socket.io:仅在连接一个客户端的情况下创建新连接,html,node.js,server,socket.io,client,Html,Node.js,Server,Socket.io,Client,我有一个极简主义的socket.io,它运行在Node.js上,有一个HTML客户端 这是我最简单的服务器代码(server.js): 和我的极简客户端代码(client.html): 这很好,但是在7-8秒后,我会收到其他具有不同套接字ID的新连接消息: new connection : K3DUMN7SJ0tOU7TsAACO new connection : 3kCOVCz9fwRWtIypAACP new connection : HgMVgpeP7raq1c4YAACQ new con

我有一个极简主义的socket.io,它运行在Node.js上,有一个HTML客户端

这是我最简单的服务器代码(server.js):

和我的极简客户端代码(client.html):

这很好,但是在7-8秒后,我会收到其他具有不同套接字ID的新连接消息:

new connection : K3DUMN7SJ0tOU7TsAACO
new connection : 3kCOVCz9fwRWtIypAACP
new connection : HgMVgpeP7raq1c4YAACQ
new connection : U6-lD-3lT1vT39_oAACR
new connection : aQCKYpBUVXD7t8WIAACS
在Chrome devtools网络选项卡上,显示相同的重复消息(用于填充新连接):

非常感谢你的帮助

问候


Pierre。

我意识到我正在使用一个带有Chrome的CORS enable插件,我禁用了它,这解决了我的问题

如果指定传输层会发生什么?(看起来你在使用长轮询)它可能会退回到长轮询,并试图重新连接io.connect(服务器,{“transports”:['websocket']})我意识到我在使用一个带有Chrome的CORS enable插件,我禁用了它,这解决了我的问题。
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/3.1.3/socket.io.js"></script>
  <script>
    var socket = io('http://localhost:3000/'); 
  </script>
  <title>Document</title>
</head>
<body>
</body>
</html> 

new connection : DedBsiEyAHLIu86oAAB0 
new connection : K3DUMN7SJ0tOU7TsAACO
new connection : 3kCOVCz9fwRWtIypAACP
new connection : HgMVgpeP7raq1c4YAACQ
new connection : U6-lD-3lT1vT39_oAACR
new connection : aQCKYpBUVXD7t8WIAACS
Request URL: http://localhost:3000/socket.io/?EIO=4&transport=polling&t=NYCWok4
Request Method: GET
Status Code: 200 OK
Remote Address: [::1]:3000
Referrer Policy: strict-origin-when-cross-origin