1

我正在尝试将 android 应用程序连接到 MEAN Stack 上的 Socket.io 服务器。

我在 socketTesting 上发出一个测试字符串并在服务器端监听。

MainActivity.java

public class MainActivity extends ActionBarActivity {

    TextView tv;
    private Socket socket;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);


        try {
            socket = IO.socket("http://"+IP_ADDRESS+":"+PORT_NO);
        } catch (URISyntaxException e) {
            e.printStackTrace();
        }

        socket.connect();
        socket.emit("socketTesting","hiiii");


        setContentView(R.layout.test_xml);


    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        socket.disconnect();
    }
}

这是服务器端代码:

 socket.on('socketTesting', function(message) {

                console.log(JSON.stringify(message));

                });

服务器端不显示任何内容。我知道这是一个非常基本的问题,但我环顾四周没有任何成功。没有抛出异常,也没有连接。

4

1 回答 1

2

1) 检查 socket.io 版本是否匹配。由于服务器和客户端之间的 socket.io 不匹配,我收到了传输错误(花了 2 天时间才意识到)。

2)如果您的套接字正在侦听端口 80,然后打开浏览器并输入http://your-server-ip:80如果服务器套接字已打开以进行连接,它将给出 json 回复。

3) ppl 用于DEBUG=* node your-file.js获取当前状态,它打印出所有内容。(查看谷歌了解更多信息)

于 2015-12-15T08:51:27.380 回答