微信扫码登录工作用 仅作记录

扫码访问服务器地址

实现扫码服务器地址通讯中断设备解锁 采用signalR 双向异步通知中断

创建控制器

ChatController 注入集线器上下文 IHubContext

public IActionResult Index(string name)
{
name = name ?? "demo1";
HubContext.Clients.All.SendAsync("SendMeg", $" {name}访问了");
return View(); }

 注:这示例里通知所有终端   实现业务可加入终端ID 对点通知

集线器代码

public class ChatHub :Hub
{
//存储当前在线用户
public static List<ClientModels> clientModels = new List<ClientModels>(); /// <summary>
/// 自定义上线 通知服务器上线者设备信息
/// </summary>
/// <param name="name"></param>
public void Online(string name)
{
if (string.IsNullOrEmpty(name)) { return; }
name = Uri.EscapeDataString(name);
string connId = Context.ConnectionId;
var model = clientModels.SingleOrDefault(q => q.Name == name);
if (model == null)
{
clientModels.Add(new ClientModels() { ConnectionId = connId, Name = name,Createtime=DateTime.Now });
}
else
{
//更新令牌
model.ConnectionId = connId;
}
}

  

另外实现 主动通知设备页面 采用react+umi+antd 页面 附上fetch后台

        public IActionResult SendMsg(string name, string msg)
{ var model = ChatHub.clientModels.SingleOrDefault(q => q.Name == name);
if (model != null)
{
HubContext.Clients.Client(model.ConnectionId).SendAsync("SendMeg", $" {msg}");
return Json(new { code = 1 });
}
else
{
return Json(new { code = 2,msg="发送失败!该客户端不在线" });
}
}

  

react+umi+netcore+signalR BS和客户端设备 简单通讯的更多相关文章

  1. .NetCore SignalR 踩坑记

    背景 由于最近公司要做微信小程序聊天,所以.NetFramwork版本的SignalR版本的不能用了.因为小程序里没有windows对象,导致JQuery无法使用.而Signalr的 js客户端是依赖 ...

  2. NetCore.SignalR.Demo演示

    项目github,点击https://github.com/wangpengzong/NetCore.SignalR.Demo 1.打开服务端Server(\SignalR.Server\bin\De ...

  3. Spring Mobile——探测客户端设备和系统

    Spring Mobile--探测客户端设备和系统 今天闲来无事,浏览Spring的官方网站,发现了Spring Mobile项目,之前也看到过,还以为是针对手机端的项目,并没有细看.今天仔细看了一下 ...

  4. IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(三)

    IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(三) 后台服务用户与认证 新建一个空的.net core web项目Demo.Chat,端口配置为 ...

  5. IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(二)

    IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(二) IdentityServer4 用户中心生成数据库 上文已经创建了所有的数据库上下文迁移代码 ...

  6. IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯(一)

    IdentityServer4 + SignalR Core +RabbitMQ 构建web即时通讯 前言 .net core 2.1已经正式发布了,signalr core1.0随之发布,是时候写个 ...

  7. Java Spring Boot VS .NetCore (一)来一个简单的 Hello World

    系列文章 Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filte ...

  8. Windows Socket 编程_单个服务器对多个客户端简单通讯

    单个服务器对多个客户端程序: 一.简要说明 二.查看效果 三.编写思路 四.程序源代码 五.存在问题 一.简要说明: 程序名为:TcpSocketOneServerToMulClient 程序功能:实 ...

  9. [转]RabbitMQ的安装与客户端的简单实用

    原文地址:http://www.cnblogs.com/yangh965/p/5862347.html 本文主要内容是RabbitMQ的安装步骤[Windows系统与linux上的安装]及客户端的简单 ...

随机推荐

  1. AT+CNUM获取不到手机号

    原因是卡商没有写入SIM卡 解决办法 手动写入 1. 先确认SIM卡的本机号码 2. 选择电话本存储 /* AT+CPBS Select phonebook memory storage " ...

  2. Red Hat安装虚拟带库

    1.安装五个包 # yum -y install lzo-devel sg3_utils lsscsi mtx mt-st mtx源码:http://sourceforge.net/ 2.下载最新版的 ...

  3. 将流数据输出到Mysql中

    outputMysqlApp.scala import java.sql.DriverManager import org.apache.spark.SparkConf import org.apac ...

  4. 【前端_css】RGB 常用颜色列表

    转载博客:RGB 常用颜色列表

  5. jenkins使用小技巧:pom.xml文件里的版本随着每次发布变化怎么办?

    针对这个问题,构建方法不变, 变化在动态去获取每次打出来的包名, 比如说,本次打出来的报名mypackage-1.0.3-SNAPSHOT.jar 那么,先进入target目录 #先进入target目 ...

  6. 论文笔记系列-AutoFPN

    原论文:Auto-FPN: Automatic Network Architecture Adaptation for Object Detection Beyond Classification 之前 ...

  7. js 落幕

    1.关于路由的跳转 核心是 a 再取出后缀作为参数判断 最后 innerHTML 上 <!DOCTYPE html> <html lang="en"> &l ...

  8. shell 字符菜单管理

    1.创建一个脚本func.sh 脚本如下func2.sh #!/bin/bash function menu(){ title="My Menu" url="www.la ...

  9. 流媒体服务器 red5

    https://github.com/Red5/red5-server/releases/tag/v1.0.7-RELEASE   打开此链接  再tar包那里  复制链接地址 Wget此链接地址 W ...

  10. 11/11 <Topological Sort> 207

    207. Course Schedule 我们定义二维数组 graph 来表示这个有向图,一维数组 in 来表示每个顶点的入度.我们开始先根据输入来建立这个有向图,并将入度数组也初始化好.然后我们定义 ...