Signalr 在多个选项卡中向客户端发送消息
Signalr send message to client in multiple tabs
我正在尝试弄清楚如何使用 SignalR 向在多个选项卡中连接的一个客户端发送消息。
问题是当我将消息发送到特定客户端时,它只到达第一个选项卡而不是客户端浏览器的当前选项卡。
这是我的一些代码:
ChatHub class:
public void SendToSpecific(string name, string message, string to, string chatlog, string chatlogTo, string mType)
{
Clients.Caller.broadcastMessage(name, message, chatlogTo, mType);
Clients.Client(dic[to]).broadcastMessage(name, message, chatlog, mType);
}
Jquery:
chat = $.connection.chatHub;
Startup.cs:
using Owin;
using Microsoft.Owin;
[assembly: OwinStartup(typeof(testFoundation.Startup))]
namespace testFoundation
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
// Any connection or hub wire up and configuration should go here
app.MapSignalR();
}
}
}
问题是,如果他在多个选项卡中连接,我如何将消息发送到客户端浏览器活动选项卡?
谢谢。
Clients.Client 将发送到一个连接,每个选项卡都有自己的连接。如果您想发送给特定用户,请使用
Clients.User
发送到活动标签似乎很奇怪?如果他切换选项卡,其他选项卡将不会是最新的?
我正在尝试弄清楚如何使用 SignalR 向在多个选项卡中连接的一个客户端发送消息。 问题是当我将消息发送到特定客户端时,它只到达第一个选项卡而不是客户端浏览器的当前选项卡。
这是我的一些代码:
ChatHub class:
public void SendToSpecific(string name, string message, string to, string chatlog, string chatlogTo, string mType)
{
Clients.Caller.broadcastMessage(name, message, chatlogTo, mType);
Clients.Client(dic[to]).broadcastMessage(name, message, chatlog, mType);
}
Jquery:
chat = $.connection.chatHub;
Startup.cs:
using Owin;
using Microsoft.Owin;
[assembly: OwinStartup(typeof(testFoundation.Startup))]
namespace testFoundation
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
// Any connection or hub wire up and configuration should go here
app.MapSignalR();
}
}
}
问题是,如果他在多个选项卡中连接,我如何将消息发送到客户端浏览器活动选项卡?
谢谢。
Clients.Client 将发送到一个连接,每个选项卡都有自己的连接。如果您想发送给特定用户,请使用
Clients.User
发送到活动标签似乎很奇怪?如果他切换选项卡,其他选项卡将不会是最新的?