1

我用红蜘蛛。如何检查套接字是否连接? isConnecting是私有财产。

4

2 回答 2

1

你应该使用socket.isConnected

if socket.isConnected {
    //socket is connected
}
于 2018-01-18T13:53:10.003 回答
0

如果你想检查你的套接字是否还活着(如果你觉得它可能已经死了,例如你没有收到你应该得到的数据包流)那么你可以发送 ping,这将导致触发 websocketDidDisconnect万一套接字消失的方法。是的,你是对的 isConnected 说它过去是连接的,所以你不能依赖它。

func sendPing() {
    guard let socket = socket, socket.isConnected
        else { return }
    socket.write(ping: "PING")
}
于 2018-10-18T12:15:12.000 回答