Ios 我可以在使用socket.io-client-swift连接时更改connectParams吗?
我正在使用套接字创建聊天。 使用connectParams输入您的昵称。 我想在连接到套接字时更改我的昵称。 我怎样才能改变它Ios 我可以在使用socket.io-client-swift连接时更改connectParams吗?,ios,swift,sockets,socket.io,Ios,Swift,Sockets,Socket.io,我正在使用套接字创建聊天。 使用connectParams输入您的昵称。 我想在连接到套接字时更改我的昵称。 我怎样才能改变它 func connectSocket(){ manager = SocketManager(socketURL: URL(string: url!)!, config: [.compress, .connectParams(["chatUID":chatUID,"isAdmin":isAdmin,"nickName":nickName])]) socke
func connectSocket(){
manager = SocketManager(socketURL: URL(string: url!)!, config: [.compress, .connectParams(["chatUID":chatUID,"isAdmin":isAdmin,"nickName":nickName])])
socketClient = manager?.socket(forNamespace: "/chat")
socketClient?.on(clientEvent: .connect) {data, ack in
if isJoin{
self.sendJoinUser()
}
}
socketClient?.connect()
}
我试过这个
func changeNickname(newNickName:String){
manager?.config = [.compress, .connectParams(["chatUID":chatUID,"isAdmin":isAdmin,"nickName":newNickName])]
socketClient?.setReconnecting(reason: "Change NickName")
}
不起作用
如何实时更改参数?首先断开socketClient
socketClient?.disconnect()
然后用新参数重新定义它
manager = SocketManager(socketURL: URL(string: url!)!, config: [.compress, .connectParams(["chatUID":chatUID,"isAdmin":isAdmin,"nickName": newNickName])])
socketClient = manager?.socket(forNamespace: "/chat")
再次连接它
socketClient?.connect()
很简单