Ios 套接字响应问题
我的应用程序中有五个选项卡。第二个选项卡在登录后显示,我在第三个选项卡的ViewDidDisplay中调用了socket connect,如下所示Ios 套接字响应问题,ios,swift,Ios,Swift,我的应用程序中有五个选项卡。第二个选项卡在登录后显示,我在第三个选项卡的ViewDidDisplay中调用了socket connect,如下所示 SocketIOManager.sharedInstance.connectToServer(decoded, completionHandler: { (List) -> Void in dispatch_async(dispatch_get_main_queue(), { () -> Void in
SocketIOManager.sharedInstance.connectToServer(decoded, completionHandler: { (List) -> Void in
dispatch_async(dispatch_get_main_queue(), { () -> Void in
print("response \(List)")
)}
)
在SocketIOManager中,输入以下代码
func connectToServer(data: AnyObject, completionHandler: (List: AnyObject) -> Void) {
socket.on("connect") { (dataArray, socketAck) -> Void in
self.socket.emit("api_request", data)
print("Socket Connected")
}
socket.on("api_response") { ( dataArray, ack) -> Void in
completionHandler(List: dataArray as AnyObject!)
//print("acknowledgemt received from \(dataArray)")
}
}
func applicationDidEnterBackground(application: UIApplication) {
SocketIOManager.sharedInstance.closeConnection()
}
func applicationDidBecomeActive(application: UIApplication) {
SocketIOManager.sharedInstance.establishConnection()
}
在下面的代码中
func connectToServer(data: AnyObject, completionHandler: (List: AnyObject) -> Void) {
socket.on("connect") { (dataArray, socketAck) -> Void in
self.socket.emit("api_request", data)
print("Socket Connected")
}
socket.on("api_response") { ( dataArray, ack) -> Void in
completionHandler(List: dataArray as AnyObject!)
//print("acknowledgemt received from \(dataArray)")
}
}
func applicationDidEnterBackground(application: UIApplication) {
SocketIOManager.sharedInstance.closeConnection()
}
func applicationDidBecomeActive(application: UIApplication) {
SocketIOManager.sharedInstance.establishConnection()
}
登录并按第三个选项卡后,我不会立即收到响应。只有在关闭并重新打开应用程序后才能获得响应。您需要提供更多应用程序代码。另外,屏幕截图或更清晰的步骤会发生什么helpful@Alistra我尝试在socket.emit上放置断点,但在socket.on(“api_响应”)上没有响应