使用 socket.io-client.java 库连接到 socket.io 命名空间
Posted
技术标签:
【中文标题】使用 socket.io-client.java 库连接到 socket.io 命名空间【英文标题】:Connecting to a socket.io namespace using the socket.io-client.java library 【发布时间】:2015-10-08 20:55:20 【问题描述】:我可以使用这个库 https://github.com/nkzawa/socket.io-client.java 连接到 socket.io Web 服务没有问题。不过,我无法完全弄清楚如何连接到特定的命名空间。我查看了测试代码并认为我可能需要创建一个 Manager 类。
任何帮助将不胜感激。非常感谢。
【问题讨论】:
请添加重现您的问题的代码。 【参考方案1】:Manager manager = new Manager(new URI("http://socket.com"));
Socket socket = manager.socket("/my-namespace");
socket.connect();
【讨论】:
这帮助 mi 解决了 android 上的 Invalid namespace 错误。我必须将“/”设置为命名空间 如何在一个连接上添加多个名称空间以及在尝试侦听或发出@patrick_corrigan 时如何在它们之间进行选择 @Armstring 对不起,我不知道。我已经好几年没用过这个库了。【参考方案2】:以上答案对我不起作用。
实际上这段代码有效,请使用最新版本的socket.io客户端版本: https://github.com/socketio/socket.io-client-java
在你的 build.graddle 中添加这个:
compile ('io.socket:socket.io-client:1.0.0')
// excluding org.json which is provided by Android
exclude group: 'org.json', module: 'json'
然后你可以使用这个 sn-p 连接到你的命名空间:
Socket socket;
try
socket = IO.socket(socket_host + "/your_namespace");
catch (URISyntaxException e)
Log.d("ERROR :", e.toString());
socket.connect();
查看这个 github 问题,那里有更多解释: https://github.com/nkzawa/socket.io-android-chat/issues/8
【讨论】:
以上是关于使用 socket.io-client.java 库连接到 socket.io 命名空间的主要内容,如果未能解决你的问题,请参考以下文章
在使用加载数据流步骤的猪中,使用(使用 PigStorage)和不使用它有啥区别?