无法使用socket.io-client-swift从服务器端接收数据

问题描述 投票:0回答:1

我正在创建一个聊天应用,服务器端使用node.js,客户端端使用socket.io-client-swift。当我尝试连接到服务器时,它会完美连接,但是当我要接收数据数组时,它会以一个空数组作为响应。我已经尝试了很多次,但是没有用,但是在android中可以完美地接收数据,没有任何问题。

  1. 连接到服务器
  2. 在连接后发出((joinRoom“)]
  3. 当我连接到房间时,使用on(“ welcome”)接收数据

我添加了两张控制台响应的图片

  1. 第一个告诉我无效的名称空间first part response in console
  2. 第二个向我显示空数组second part response in console

插座经理

    class SocketIOManager: NSObject {
      static let sharedInstance = SocketIOManager()
      let manager = SocketManager( socketURL: URL(string:"https://realtime.allonsy-tech.com/members_chat")!, config: [.log(true),.compress])
        var socket : SocketIOClient!

        override init() {
            super.init()
            self.socket = manager.defaultSocket
        }
    //    /members_chat
              func establishConnection(){
                 socket.connect()
                }
            func closeConnection(){
                 socket.disconnect()
                }
              func joinTheRoom(){
                socket.emit("joinRoom") {
                    print("I have joined ")
                }
            }

            func welcome ( ){
                     socket.on(clientEvent: .connect) {data, ack in
                        print("socket connected")
                         self.joinTheRoom()
                        self.socket.on("welcome") { (data, ack) in
                            print(data)
                            print("\(ack)")

                        }
                    }

                }


    }

我的ViewController

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
     SocketIOManager.sharedInstance.establishConnection()
        SocketIOManager.sharedInstance.welcome()
    }
}
socket.io swift4 xcode10
1个回答
0
投票

您是如何解决您的问题的?您在哪里添加了名称空间? @AMR AL-KHAYAT

© www.soinside.com 2019 - 2024. All rights reserved.