SocketIO再次出事,最后一点小问题,求帮

搞了两天终于客户端和服务器端连接上了。
var socket = SocketIO.connect(“http://localhost:10000”, {“force new connection” : true});

    socket.on("connectState",function(data){
      //服务器端可以正常返回数据
        // connected
        // sockte.connected = true;
        console.log("====状态"+data);
        var json = JSON.parse(data);
        console.log("====状态"+json.isConnect);
        var token = json.id;
        console.log("====ID===="+token); 这里的id是可以接收到的



       //一下是测试的代码,服务器端向客服端发送数据是没问题,我循环2秒一次,都可以收到,但是客服端发送信息到服务器端,死活收不到,一下是测试的方法,emit和send都用了,看无数文档,就是不行,不知道是不是哪不对,请大神帮忙看下。

        // sockte.send("myevent","");

        console.log("====socket.disconnected===="+socket.connected); // false

        // sockte.emit("myevent","");
        // sockte.emit("myevent");
        socket.emit('myevent', 'tobi', (data) => {
            console.log("=====回调了");
            console.log(data); // data will be 'woot'
        });
        // sockte.emit("msg1",{
        //     "token" : token
        // });
        // sockte.emit("myevent");
        // sockte.emit("myevent",{});
        // sockte.emit("msg1",{});

        // setTimeout(function(){
        //     console.log("====发射");
            // sockte.emit("myevent","");
        //
        // },2000);
        // sockte.emit("myevent",data);
        // sockte.send("myevent","abc",1);
    });

经再次测试,发现客户端connect和connected都监听不到,但是服务器端有能给客户端的自定义方法发送信息,这就奇怪了

然后新建项目继续倒腾,发现示例中用的socket.io.js 和现在下载的socket.io.js 最新版,完全不一样,示例中的更像又一次的封装,这可咋办啊。论坛上的帖子基本看完了,没解决。

是在想不明白,链接到服务器端,服务器款也可以获取带这个链接,也可以发信息,但是客户端往服务器端发信息就提示没链接,这是哪错了呢。希望知道的大拿帮忙提示一下,项目都停了。文档就几句话,根本不知道咋做

别沉哦。官方的能给个详细能用的文档吗

和楼主遇到了一样的问题,我是web平台正常,模拟器和真机怎么都连不上。模拟器使用的是内部封装的socketio实现方法,所以大概和自己导入的socket.io.js没有关系(真机不用这个)。但是cocos官方手册宣布不再支持socketio,内部方法可能没有适配新版本。出现这个问题应该是服务端端的版本有点高了,打算找个旧版的socketio试一试(但是还没有找到,socketio的官网真是一塌糊涂:sweat:)。不行的话就打算放弃socketio了。楼主的问题如果解决了麻烦告知一下,谢谢啦

问题解决了。使用了https://forum.cocos.com/t/cocoscreator-socketio-1-0/35538这个帖子里给出的node.js的版本(4.6.2),卸载了之前用的10.X.X,隔的版本实在有点多了。

终于搜到个一模一样的情况了

用1.9到2.1打包都是这样的,原生安卓,发包有概率发不出去,还是特定的包,表现在游戏内就是某玩家的某固定操作一定会看似网络卡住,实际是因为没有发出去,也没任何报错。服务器的推送客户端依然可以收到

1.4用socketIO原生做过项目,没有这个问题。。。还有引擎1.9到2.1,改那么多变量名和基本函数干什么,吃饱了没事干,项目版本变迁下真不容易。

以后creator只做H5。。原生老实的写份unity得了,不指望了。几个项目都因为引擎BUG被毁了

你这只是服务器和客户端的连接互相通信问题,关键的是你怎么管理这些网络资源的,比如玩家账号,角色数据,货币,道具,这些东西,实现服务器向客户端的试试更新,怎么做到的