Windows系统下本地MQTT服务器搭建(保姆级教程)

Windows系统下本地MQTT服务器搭建

1.下载并安装emqx服务器

1. 访问Eqmx官网
在这里插入图片描述
2. 选中合适的MQTT服务器版本
由于我们使用的是本地部署MQTT服务器,而且只使用基础功能的MQTT服务器功能,所以选中“大规模分布式MQTT消息服务器”即可,如下如图所示,点击下载按钮,下载。
在这里插入图片描述
3. 选中“Windows”,下载“ emqx-5.3.0-windows-amd64.zip ”,如下图所示。

在这里插入图片描述

4. 在电脑任意一个盘,新建文件夹,例如“EMQX”文件,然后将下载的压缩文件解压,如下图所示。
在这里插入图片描述

2.运行emqx服务器(即MQTT服务器),并登录服务器后管理页面。

1. 启动EMQX(即MQTT服务器)
在这里插入图片描述
然后,在命令行输入“./emqx start”,即可启动MQTT服务器,如下图所示。
在这里插入图片描述
2. 登录MQTT服务器后台管理界面

①通过浏览器访问http://localhost:18083/(localhost 可替换为您的实际 IP 地址),如下图所示。
在这里插入图片描述
②输入默认账号和默认密码,登录MQTT服务器后台管里界面
输入默认账号为“admin”,默认密码为“public”,然后点击登录按钮,进入MQTT服务器后台管里界面。
在这里插入图片描述
如果第一次使用,会提示“为了保护账户安全,请修改默认密码”,如下图所示,你可以选择“跳过”,或者修改密码。
在这里插入图片描述
登录成功后,MQTT服务器后台管里界面,如下图所示。
在这里插入图片描述

3.增加MQTT1和MQTT2用户。

1. 创建认证
点击按钮创建认证,如下图所示。
在这里插入图片描述
认证方式选中“Password-Based”,即使用客户端用户名、Client ID与密码进行认证,如下图所示。
在这里插入图片描述
“数据源”选中“内置数据库”,如下图所示。
在这里插入图片描述
配置参数,账号类型选中“username”,密码加密方式选中“sha256”,加盐方式选中“suffix”,如下图所示。
在这里插入图片描述
2.创建用户
如下图所示,创建认证后,点击“用户管理”,进入用户管理界面。
在这里插入图片描述
进入用户管理界面之后,点击“+”按钮,分别添加“MQTT1”和“MQTT2”用户,如下图所示。
在这里插入图片描述
用户名分为“MQTT1”和“MQTT2”,密码都是“123456”,都是“超级管理员”,如下所示。
在这里插入图片描述
创建完MQTT1和MQTT2用户后,用户界面如图下所示。
在这里插入图片描述

4.测试本地部署的MQTT服务器

1. 下载EMQX的(MQTT客户端),如下图所示。
在这里插入图片描述
2. 分别打开两个MQTT5.0客户端工具。
在这里插入图片描述
3.将两个MQTT5.0客户端工具的语言设置为“简体中文”,步骤下图所示。
在这里插入图片描述
4. 新建MQTT1和MQTT2的用户连接
分别点击客户端1和客户端2的新建连接按钮,如下图示所示。
在这里插入图片描述
5. 配置MQTT1和MQTT2的用户连接参数
名称和Client ID可以任意填写,这里客户端1填写hao1,客户端2填写hao2,服务器地址都选中“mqtt://”并填写“127.0.0.1”,端口都是“1883”,用户名分别填写“MQTT1”和“MQTT2”,密码都是“123456”,MQTT版本都选中“3.1.1”,如下图所示。
在这里插入图片描述
6.点击两个客户端的连接按钮,连接MQTT服务器,如下图所示
在这里插入图片描述
7. 设置两个客户端的发布主题。
客户端1的发布主题为“/MQTT1/pub”,
发布的数据为

{
  "wendu": 23.56
}

客户端2的发布主题为“/MQTT2/pub”,
发布的数据为

{
  "shidu": 77.56
}

如下图所示。
在这里插入图片描述
8.设置两个客户端的订阅主题。
在这里插入图片描述
设置订阅接收数据格式为JSON并且选中只显示已接收数据,如下图所示。
在这里插入图片描述
9. 分别点击两个客户端发布按钮。
如下图所示,当我们点击客户端1的发布主题按钮时,在客户端2上的订阅主题接收到客户端1发布的主题的温度JSON数据,当我们点击客户端2的发布主题按钮时,在客户端1上的订阅主题接收到客户端2发布的主题的湿度JSON数据。
在这里插入图片描述

5.小结

本教程讲述了如何在Windows电脑本地上搭建MQTT服务器,怎样进入MQTT服务器后台管理界面,如何在MQTT服务器上添加用户,如何通过MQTT客户端连接MQTT服务器,并通过两个MQTT客户端演示了MQTT通信的简单发布主题和订阅主题。

### 微信小程序连接物联网云平台教程 #### 1. 硬件准备与初始化设置 确保硬件设备已正确组装并完成初步配置。这包括STM32开发板、ESP8266 Wi-Fi模块以及智能锁电机之间的物理连线,并确认这些组件能够正常工作[^1]。 #### 2. 软件环境搭建 安装必要的软件工具链,如Keil MDK用于编写和编译嵌入式C/C++程序;Arduino IDE或其他支持ESP8266固件上传的应用来更新Wi-Fi模组的固件版本。同时,在PC端准备好微信开发者工具以便后续的小程序开发工作[^2]。 #### 3. 设备接入云端服务 注册成为腾讯云用户后登录官网创建新的IoT项目,获取唯一的产品ID和其他认证信息(例如密钥)。按照官方文档指示填写相应字段以激活该产品实例下的第一个设备实体——即本案例中的智能门锁装置。 #### 4. 配置网络通信协议栈 为了实现稳定可靠的双向数据交换过程,建议采用MQTT作为消息传输层的标准之一。对于前端部分,则可通过集成WebSockets API接口实现实时监听来自服务器推送的通知事件流。具体来说就是在`app.js`文件里定义全局变量保存socketTask对象引用,而在页面逻辑处理函数内部调用connectSocket()方法建立持久化链接关系[^3]。 ```javascript // app.js App({ globalData: { socketTask: null, }, }) ``` ```javascript Page({ onLoad(options){ const that = this; wx.connectSocket({ url: 'wss://yourserver.com/socket', success(res){ console.log('WebSocket connection successful'); // Store the reference to the WebSocket task object globally. getApp().globalData.socketTask = res.websocketTask; // Set up event listeners for message reception and error handling here... } }); // Other initialization code goes below... }, onUnload(){ if (getApp().globalData.socketTask !== null && typeof(getApp().globalData.socketTask.close) === "function"){ getApp().globalData.socketTask.close(); } } }); ``` #### 5. 实现业务功能交互流程 当一切就绪之后就可以着手构建具体的UI界面元素了。比如设计一个简单的开关按钮用来触发开/关门动作请求发送给后台解析执行命令序列下发至目标节点完成最终的动作响应循环。与此同时也要考虑到异常情况的发生概率提前规划好相应的容错机制保障用户体验质量不受影响。
评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

豪哥追求卓越

觉得有用就打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值