socket io android客户端无法接收事件的消息

qkf9rpyu  于 2021-06-29  发布在  Java
关注(0)|答案(0)|浏览(329)

我正在尝试通过命名空间“/watch”下的socket io与web服务器通信
根据迄今为止的客户机-服务器契约,当我发出事件“ping”时,我从服务器得到一个成功的ping。
当事件“sub”与负载{“state”:“true”}一起发出时,它返回一个json响应,成功时返回事件“data”,失败时返回事件“error”。。在这种情况下,当我发出事件“sub”并侦听数据和错误时,我不会从服务器收到反馈。。
我想不出我可能做错了什么。
注意:cors已在服务器中启用,是否有任何配置要为此在客户端头上执行?
客户初始化

val manager = Manager(URI(Constants.URL))
  manager.reconnection(true)

  val socket = manager.socket("/watch") //Namespace
  socket.connect()  

  socket.on(com.github.nkzawa.socketio.client.Socket.EVENT_CONNECT) {
            Log.d("EVENT CONNECT", "")
       }.on(Socket.EVENT_DISCONNECT) {
           Log.d("EVENT DISCONNECT", ""))
       }.emit("sub", Gson().toJson(State("true"))).on("data") { array->
           array?.let {
               it.map { output->
                   android.util.Log.d("output is", output.toString())
               }
           }
           Log.d("Data", "")
           socket.emit(topic, WebSocketServiceImpl.CLIENT_ACKNOWLEDGEMENT)
       }.on("error") { array->
           array?.let {
               it.map { output->
                   Log.d("output is", output.toString())
               }
           }
       }
        socket.connect()

我在android代码中使用以下客户端

implementation 'com.github.nkzawa:socket.io-client:0.6.0'

如果ping成功了,我还缺什么?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题