Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中握手的socket.io编程错误_Android_Node.js_Sockets_Android Layout - Fatal编程技术网

android中握手的socket.io编程错误

android中握手的socket.io编程错误,android,node.js,sockets,android-layout,Android,Node.js,Sockets,Android Layout,我已经创建了server.js文件并运行了 npm安装socket.io 我使用了Gotox示例与android设备上的套接字通信,但我遇到了一个握手错误。请帮帮我 这是我的server.js文件 //settings var websocketPort = 8080; // start websockets var io = require('socket.io').listen(websocketPort); console.log('chat server is running

我已经创建了server.js文件并运行了

npm安装socket.io

我使用了Gotox示例与android设备上的套接字通信,但我遇到了一个握手错误。请帮帮我

这是我的server.js文件

    //settings
var websocketPort = 8080;

// start websockets
var io = require('socket.io').listen(websocketPort);
console.log('chat server is running on port ' + websocketPort);

//websocket communication
io.sockets.on('connection', function(socket){
      // tell all clients who has connected
      var ipAddress = socket.handshake.address.address;
      io.sockets.emit('chat', {name: ipAddress, text: 'joined chat'});
      console.log('client [' + ipAddress + '] connected');

      // relay message of client to all other clients
      socket.on('chat', function(data){
            io.sockets.emit('chat', {name: data.name, text: data.text});
      });

      // tell all clients who has disconnected
      socket.on('disconnect', function(){
            io.sockets.emit('chat', {name: ipAddress, text: 'left chat'});
            console.log('client [' + ipAddress + '] disconnected');
      });
});
我使用Gotox/socket io客户端与android设备的套接字通信。 代码如下

    final SocketIO socket = new SocketIO("http://192.168.2.24:8080");
            socket.connect(new IOCallback() {

                @Override
                public void onMessage(JSONObject arg0, IOAcknowledge arg1) {
                    try {
                        Log.e("TAG","Server said:" + arg0.toString(2));
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }

                }

                @Override
                public void onMessage(String arg0, IOAcknowledge arg1) {
                    Log.e("TAG","Server said:" + arg0);

                }

                @Override
                public void onError(SocketIOException arg0) {
                    Log.e("TAG","An Error " + arg0);

                }

                @Override
                public void onDisconnect() {
                    Log.e("TAG","Connection terminated ");

                }

                @Override
                public void onConnect() {
                    Log.e("TAG","Connection eSTABLISHED ");
                    socket.emit("connection", socket);

                }

                @Override
                public void on(String arg0, IOAcknowledge arg1, Object... arg2) {
                    Log.e("TAG","server Started " + arg0);

                }
            });
//          socket.send("user message");
            socket.emit("connection", socket);

        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
每次我连接时,我都会在握手时出错

 11-07 17:00:03.475: E/TAG(2524): An Error io.socket.SocketIOException: Error while handshaking
11-07 17:00:03.475: I/io.socket(2524): Cleanup

请看一下您是否向清单文件添加了网络权限,并且网络通信应与主线程分开是的,我已在清单中添加了在异步任务SocketIO socket=new SocketIO(“)中进行网络通信的权限;如果您要打开http连接,请使用http post、put、delete方法