我正在ReactJS(18.2)中使用Vite(4.1)和Socket.IO-client(4.6)开发一个应用程序,在开发模式下运行(npm run dev)和部署后(npm run build + npm run preview),一切都在本地正常工作。
然而,当尝试在Github Pages或Netlify上使用此部署时,应用程序似乎根本无法运行任何与Socket. IO相关的功能。它也不会向控制台发送任何类型的错误,这使我无法了解可能出现的错误。
我做了不同的测试,在Github和Netlify上运行应用程序,在Vite上尝试了不同的配置,但问题仍然存在。
我找到的一个可能的解决方案是添加命令{ transports:将['websocket'] }添加到socker.io连接参数:
const socket = io(SERVERURL, {
transports: ['websocket', 'polling', 'flashsocket'],
path: '/SERVERPATH',
forceNew: true,
reconnectionAttempts: 3,
timeout: 2000,
});
我想了解什么可能会出错,并尽快解决这个问题,所以任何帮助都非常感谢!
1条答案
按热度按时间nvbavucw1#
已通过将WebSocket服务器连接的URL从HTTP更改为WSS解决此问题。
常量套接字= io(wss:urlofserver.com,{传输:[“网络套接字”],路径:“/服务器路径”,强制新建:true,重新连接尝试次数:3、超时:2000年,});