asp.net – SignalR(Hub)可以发送除信号制作者之外的消息吗?
发布时间:2020-05-24 12:26:44 所属栏目:asp.Net 来源:互联网
导读:我正在学习SingalR( https://github.com/SignalR/SignalR). 我真的想向所有连接发送消息,除了发生事件的人. 例如, 在聊天应用程序中,有三个客户端(A,B,C). 客户端A键入消息“Hello”并提交clikc. Clients.addMessage(数据);发送“Hello”给All Cleint(包括提
|
我正在学习SingalR( https://github.com/SignalR/SignalR). 我真的想向所有连接发送消息,除了发生事件的人. 例如, 在聊天应用程序中,有三个客户端(A,B,C). 客户端A键入消息“Hello”并提交clikc. Clients.addMessage(数据);发送“Hello”给All Cleint(包括提示A) 我想发送“Hello”只有客户B和C. 我怎样才能实现它? // I think this can get all Clients,right? var clients = Hub.GetClients<Chat>(); 解决方法今天无法在服务器上过滤消息,但您可以从客户端阻止消息给呼叫者.如果你看一下signalr上的一些样本,你会看到他们在一个方法(通常称为join)中为每个客户端分配一个生成的id给客户端.每当您从集线器调用方法时,传递调用客户端的id,然后在客户端进行检查以确保客户端的ID与调用者的ID不同.例如public class Chat : Hub {
public void Join() {
// Assign the caller and id
Caller.id = Guid.NewGuid().ToString();
}
public void DoSomething() {
// Pass the caller's id back to the client along with any extra data
Clients.doIt(Caller.id,"value");
}
}
客户端 var chat = $.connection.chat;
chat.doIt = function(id,value) {
if(chat.id === id) {
// The id is the same so do nothing
return;
}
// Otherwise do it!
alert(value);
};
希望有所帮助. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-web-api – 如何在MVC4 Web API中的自定义绑定器中
- ASP.NET MVC:如何使用控制器发送HTML电子邮件?
- asp.net – 如何获得Google Prettify更像Visual Studio
- 是否可以使用ASP.NET ScriptManager来使用Windows FIPS安全
- asp.net – HTML敏捷包删除break标签关闭
- asp.net – 在负载均衡器上启用粘性会话
- asp.net-mvc – 带编码文本的MVC3 TextBoxFor
- asp.net-mvc – 具有IE条件注释的MVC4捆绑/缩小
- asp.net-mvc-3 – 剃刀索引视图中的条件格式
- asp.net – 你对Windows Workflow Foundation有什么经验?
推荐文章
站长推荐
- asp.net中XML如何做增删改查操作
- 使用log4net和ASP.NET跟踪会话变量
- asp.net-core – .NET Core 1.0 – 如何使用xUni
- 使用ASP.NET SDK将文件上载到S3存储桶的文件夹
- 如何使用ASP.NET身份实现多租户用户登录
- asp.net – 加密ASP .NET 2.0和SQL Server 2005中
- 休息 – ASP.NET Web API授权和身份验证
- asp.net-mvc – ASP.NET MVC的所有可用ActionRes
- asp.net-web-api – 首先使用ASP.NET Web API的E
- asp.net – URL长度的最佳限制是什么? 100,200
热点阅读
