gpt4 book ai didi

asp.net-mvc - 如何使用 signalr 将多个客户端连接到同一个 websocket?

转载 作者:行者123 更新时间:2023-12-03 03:07:35 25 4
gpt4 key购买 nike

我有一个 Web MVC 5 应用程序,我在本地测试了它并且工作正常。

是否可以在局部变量上跟踪连接的用户?我应该将其存储在数据库中吗?

我有主持人 View 和玩家 View ,每次玩家上线时,计数器都应该添加一个,它在本地主机上工作,但在部署到 azure 时不起作用(我启用了网络套接字)。

有没有一种方法可以检查打开的连接并使每个客户端都连接到该连接?

谢谢!!!!

最佳答案

如果您部署了 SignalR 应用程序,我们可以重写 OnConnectedOnReconnectedOnDisconnected 方法来跟踪/统计 SignalR 应用程序中的在线用户对于具有多个实例的 Azure 网站,我建议您 use either a database or Azure table storage for storing connection information

Hub类中的代码片段

public override Task OnConnected()
{
//update the number of online user from database or Azure table storage

//call function usercounter to update clients to show online user number
Clients.All.usercounter(userCount);

return base.OnConnected();
}


public override Task OnReconnected()
{
//update the number of online user from database or Azure table storage

Clients.All.usercounter(userCount);

return base.OnReconnected();
}

public override Task OnDisconnected(bool stopCalled)
{
//update the number of online user from database or Azure table storage

Clients.All.usercounter(userCount);

return base.OnReconnected();
}

此外,SignalR Tracing feature使我们能够查看有关 SignalR 应用程序中事件的诊断信息,这可以帮助我们解决 SignalR 问题。

关于asp.net-mvc - 如何使用 signalr 将多个客户端连接到同一个 websocket?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42987697/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com