gpt4 book ai didi

node.js - Socket-io 客户端不断发送连接请求

转载 作者:可可西里 更新时间:2023-11-01 11:44:55 26 4
gpt4 key购买 nike

我正在创建包含一些实时功能的应用程序。我在前端使用 Node.jsSocketIOExpress + React。我的后端处理 httpws 请求。我使用带有代理选项的 webpack-dev-server 将客户端的请求重定向到我的本地服务器。

几天前,虽然我既没有接触 webpack 配置也没有接触后端代码,但在客户端单次调用 io({ path: '/socket' }) 导致发送大量连接请求到我的后端。

原因不是 HMR、组件的重新渲染或客户端的某些循环。我确信客户端只调用一次 io({ path: '/socket' }) 。即使我将分支更改为一些旧分支(其中肯定不存在问题),在重新安装所有 node_modules 之后,问题仍然存在。所以这甚至可能与一些网络/硬件相关。我使用 Windows 10,Node.js 6。

我的后端在控制台中生成的 Debug模式下的示例日志:

enter image description here

这只是日志的一部分,一般来说它保持连接非常快并且不会停止。

知道这里发生了什么吗?

最佳答案

问题是即使 websocket 已经可用,socket.io 仍继续使用长轮询。为了解决这个问题,我将 transports: ['websocket'] 传递给这样的连接选项:

import io from 'socket.io-client';
io({ path: '/socket', transports: ['websocket'] });

关于node.js - Socket-io 客户端不断发送连接请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47874802/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com