问题产生 :
多个socketio服务器,不与轮询建立连接,请指定websocket传输,因为轮询HTTP请求将被请求到另一台机器,导致sid未注册。
解决问题:
没错,前端socketio js仅设置websocket即可解决此问题
transports:['websocket']
感悟:为了这个事我tm查了两天,因为我是写后台的 本地没有问题。到线上就是请求不了一直以为是后台的问题
衍生问题:config.setHostname("127.0.0.1");或者使用IP的 一直启动报错;
解决办法把 127.0.0.1改成0.0.0.0 就可以解决了
还有一个问题如果是使用docker就一定要映射两个端口号:项目端口和SocketIO端口
网友评论