MQTTnet 3.1.2使用Demo
MQTT消息使用场景广泛,在本地做了个小demo。服务器使用的MQTTnet 3.1.2版本,最新4.1.0版本服务器权限认证网上没找到,所以就使用3.1.2版本了。
一、服务端
引用MQTTnet 3.1.2版本

二、订阅消息
引用的MQTTnet最新4.1.0版本,新增MqttClientService类,实例化client。然后连接到服务端后订阅topic。


三、发送消息
引用的MQTTnet最新4.1.0版本,新增MqttClientService类,实例化client。然后连接到服务端后向指定topic发送消息。


using MQTTnet; using MQTTnet.Client; using MQTTnet.Protocol; using MQTTnet.Server; using System; using System.Text; using System.Threading.Tasks; namespace MQTTPublish { internal class Program { private static IMqttClient client; static void Main(string[] args) { Console.WriteLine("Hello World!"); client = new MqttClientService().MqttClientStart("127.0.0.1", 1883, "cyw", "123456", "cywcyw"); client.ConnectedAsync += Client_ConnectedAsync; Console.ReadLine(); } private static System.Threading.Tasks.Task Client_ConnectedAsync(MqttClientConnectedEventArgs arg) { Console.WriteLine("Client_ConnectedAsync"); var message = new MqttApplicationMessage { Topic = "test", Payload = Encoding.Default.GetBytes("cyw-123456"), QualityOfServiceLevel = MqttQualityOfServiceLevel.AtLeastOnce, Retain = true // 服务端是否保留消息。true为保留,如果有新的订阅者连接,就会立马收到该消息。 }; Console.WriteLine("PublishAsync topic:"+ message.Topic+ " Payload:"+ Encoding.UTF8.GetString(message.Payload)); client.PublishAsync(message); return Task.CompletedTask; } } }
四、测试
依次启动服务端,订阅消息客户端和发送消息客户端。
demo地址
MQTTDemo.rar---------------我是有底线的--------------------
作者:社会主义接班人
出处:http://www.cnblogs.com/5ishare/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果文中有什么错误,欢迎指出。以免更多的人被误导。
作者:社会主义接班人
出处:http://www.cnblogs.com/5ishare/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
如果文中有什么错误,欢迎指出。以免更多的人被误导。
转 https://www.cnblogs.com/5ishare/p/16740199.html
标签:
mqtt
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)