.net core使用MQTT
废话不多说,我们来直接实践……
一、搭建mqtt控制台服务端
新建一个.net core控制台项目,然后使用Nuget添加MQTTnet包,我这里使用2.4版本,注意不同版本,代码写法不相同,如下图
编写代码,详见注释
启动试一下,发现启动成功了
二、搭建第一个客户端client1
同样使用控制台来展示客户端
具体代码如下图
三、搭建客户端client2
注意,客户端2和客户端1代码大致相同,只是为了演示,他们的主题不同,发送的内容不同
四、运行起来看看效果
右键解决方案=》属性,把三个项目都改为启动项,应用并确定后执行 CTRL+F5,见下图
服务器、客户端1、客户端2都成功接收和发布了消息,成功。
五、使用带有dashboard的EMQX来代替自写服务端
下载地址:https://www.emqx.io/downloads/broker/v3.1.1/
windows版本可选择前两个,下载后解压,注意路径不要带有中文,否则会出错
进入解压后的文件夹,在地址栏输入cmd或者打开控制台进入文件夹路径,执行命令如图
启动成功,打开浏览器,输入127.0.0.1:18083,进入登录界面
用户名为 admin
密码 public
登录后如图
使用此界面管理工具测试
点击进入Websocket界面
重新启动vs项目,发现服务端报错了,因为我们已经启动了emqx服务端,占用了同一个tcp端口,直接关掉错误的服务端即可
回到emq界面,发现模拟的client1接收到了client2的消息
然后,我们点击几次Send按钮,发现发送的消息也成功被client2接收到了
至此,测试完毕
.net core使用MQTT的更多相关文章
- IOT设备通讯,MQTT物联网协议,MQTTnet
一.IOT设备的特性 硬件能力差(存储能力基本只有几MB,CPU频率低连使用HTTP请求都很奢侈) 系统千差万别(Brillo,mbedOS,RIOT等) 如使用电池供电,电量消耗敏感 如果是小设备, ...
- 云中树莓派(2):将传感器数据上传到 AWS IoT 并利用Kibana进行展示
云中树莓派(1):环境准备 云中树莓派(2):将传感器数据上传到AWS IoT 并利用Kibana进行展示 1. 传感器安装及配置 1.1 DHT22 安装 DHT22 是一款温度与湿度传感器,它有3 ...
- AWS IoT Greengrass是什么?V1和V2版本及其差异
AWS IoT Greengrass Greengrass主要是用于边缘计算或者机器学习有关,对于详细了解请阅读结尾处的官方文档,文档内容也较为丰富. 目录 AWS IoT Greengrass ...
- .Net Core下使用MQTT协议直连IoT平台
[摘要] .Net平台通过原生MQTT接口,作为南向设备对接OceanConnect平台 因为种种历史原因吧,目前华为平台上对.net的支持案例SDK确实比较少,当看到各种语言的SDK和Demo,唯独 ...
- ABP .net Core MQTT+signalr通讯
abp版本: 4.3.0.0 .net core 版本 2.2 1.Mqtt 1.1 添加程序集:M2MqttDotnetCore(差点以为没有.net core 的) 2.2 实现代码:抄了个单例模 ...
- MQTT for UWP
老规矩,先简单介绍下MQTT: MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分.该协 ...
- 积极参与开源项目,促进.NET Core生态社区发展
今天早上在微信群里聊天聊到百度的SDK 已经支持.NET Core, 百度已经在3月份就支持了,想起当时还是我在他们的github上提的issue: https://github.com/Baidu- ...
- 快速搭建MQTT服务器(MQTTnet和Apache Apollo)
前言 MQTT协议是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分,http://mqtt.org/. MQTT is a machine-to-machine (M2M)/" ...
- 【Qt官方MQTT库的使用,附一个MqttClient例子】
Qt官方MQTT库的使用,附一个MqttClient例子 开发环境:win7 64 + Qt5.9 记录时间:2018年3月11日 00:48:42 联系邮箱: yexiaopeng1992@126. ...
随机推荐
- 试题--创建三个进程/线程,依次输出 A、B、C
这是一道机试题,大概的预期执行结果如下图所示 最近刚好在学习linux编程,便使用多线程及多进程分别实现了一遍,其中多线程较为简单,使用0/1信号量在线程间实现生产者/消费者即可:多进程则稍微复杂一些 ...
- MyBatis 核心配置综述之Executor
目录 MyBatis四大组件之 Executor执行器 Executor的继承结构 Executor创建过程以及源码分析 Executor接口的主要方法 Executor 的现实抽象 上一篇我们对Sq ...
- Jpa 笔记
ORM 思想 对象关系映射, 建立实体类和表的关系映射关系, 实体类和表中字段的映射关系,我们操作实体类底层是操作数据表, 进而自动的拼接出SQL语句 Jpa规范 Jpa(Java Persisten ...
- Making the Grade (bzoj1592)题解
问题 A: Making the Grade (bzoj1592) 时间限制: 1 Sec 内存限制: 128 MB 题目描述 FJ打算好好修一下农场中某条凹凸不平的土路.按奶牛们的要求 ...
- BI之路学习笔记3--olap cube理解实例
为什么会产生OLAP? 随着数据库技术的发展应用,数据库存储的数据量从M字节以及G(千兆)字节过渡到T字节和P字节,同时,用户的查询需求也越来越复杂,设计的已不仅是查询或者操纵一张关系表中的一条或几条 ...
- 数据库中 ’’ 和 NULL的区别
null不是对象,''是对象 从'',你就可以知道这是一个字符串类型的数据,是一个长度为零的字符串. 从NULL,你只能知道这里没有赋过值,是空的,他不属于任何数据类型. 我们在数据库实际使用中,一般 ...
- github访问不到,登陆不上
为github添加host C:\WINDOWS\System32\drivers\etc 在host文件添加如下两行 192.30.253.112 github.com 151.101.113.19 ...
- 个人永久性免费-Excel催化剂功能第95波-地图数据挖宝之IP地址转地理地址及不同经纬度版本转换
经过上一波POI兴趣点查询后,地图数据挖宝也接近尾声,这次介绍在数据采集.准备过程中需要用到的一些转换功能,有IP地址转换地理地址及不同地图版本的经纬度转换. 背景知识 在电商.网络的数据分析过程中, ...
- leetcode 198. House Robber (Easy)
https://leetcode.com/problems/house-robber/ 题意: 一维数组,相加不相邻的数组,返回最大的结果. 思路: 一开始思路就是DP,用一维数组保存dp[i]保存如 ...
- Node.js实现简易的获取access_token
还是老样子,在自学node.js的道路上走得坑坑洼洼,按住了躁动的自己,调整好心情 ,ready........Go....! 首先在项目里新建config.json,其中 appid 与 appsc ...