SignalR的协商调用返回连接ID。有没有办法在调用协商请求时在服务器端获取连接ID?
生成连接ID时是否可以订阅服务器端事件?
答案 0 :(得分:0)
如果您使用的是PersistentConnection,则可以覆盖
ProcessRequestAsync(HostContext context)
方法并从HostContext的IResponse属性获取connectionId值。
另一种方法是使用DependecyResolver提供自己的IConnectionIdFactory实现,该实现在返回connectionId字符串之前引发事件。
答案 1 :(得分:0)
如果您使用的是SignalR Hub,则可以收听connect事件,然后抓取 Context.ConnectionId 。 E.g。
public override Task OnConnected()
{
return Clients.All.joined(Context.ConnectionId, DateTime.Now.ToString());
}
答案 2 :(得分:0)
string connectionID = Context.ConnectionId;