我正在使用AutosoftDMS/SignalR-Swift客户端,以便将我的 Swift/iOS 应用程序连接到 SignalR 服务器。我的问题是,如果 SignalR 服务器支持不同的“房间”,正确的连接顺序是什么?
示例#1:
let hubConnection = HubConnection(withUrl: <some SignalR server URL>)
let chatHub = hubConnection.createHubProxy(hubName: "RoomChatHub")
hubConnection.started = {
// the value 2 is some room identifier
self.chatHub.invoke(method: "RoomConnect", withArgs: [2])
}
此示例的问题是调用没有可以开始从 2 号房间的 SignalR 服务器接收消息的处理程序。
示例#2:
let hubConnection = HubConnection(withUrl: <some SignalR server URL>)
let chatHub = hubConnection.createHubProxy(hubName: "RoomChatHub")
chatHub.on(eventName: "RoomConnect") { (args) in
if let message = args[0] as? String {
print("Room Message: \(message)")
}
}
此示例的问题是 chatHub.on 方法没有允许我指定我只需要 2 号房间的消息的参数。
如何连接到 SignalR 服务器,让我可以说我想要某个特定房间的消息?
最佳答案
我认为最好的方法是使用群组。您将为每个房间创建一个组并连接到适当的组。
关于ios - 连接SignalR服务器的流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46527037/