当前位置:首页 > JavaScript

js实现mqtt

2026-04-05 20:11:42JavaScript

使用 JavaScript 实现 MQTT

安装 MQTT 客户端库

在项目中安装 mqtt 库,可以通过 npm 或 yarn 完成:

npm install mqtt
# 或
yarn add mqtt

连接到 MQTT 代理

引入 mqtt 库并建立连接:

const mqtt = require('mqtt');
const client = mqtt.connect('mqtt://test.mosquitto.org');

client.on('connect', () => {
  console.log('Connected to MQTT broker');
});

订阅主题

连接成功后订阅指定主题:

client.subscribe('topic/test', (err) => {
  if (!err) console.log('Subscribed to topic/test');
});

发布消息

向指定主题发布消息:

client.publish('topic/test', 'Hello MQTT');

接收消息

监听并处理接收到的消息:

client.on('message', (topic, message) => {
  console.log(`Received message on ${topic}: ${message.toString()}`);
});

断开连接

在适当的时候断开连接:

client.end();

完整示例代码

以下是一个完整的 MQTT 客户端实现示例:

const mqtt = require('mqtt');
const client = mqtt.connect('mqtt://test.mosquitto.org');

client.on('connect', () => {
  console.log('Connected to MQTT broker');
  client.subscribe('topic/test');
  client.publish('topic/test', 'Hello MQTT');
});

client.on('message', (topic, message) => {
  console.log(`Received message on ${topic}: ${message.toString()}`);
});

client.on('error', (err) => {
  console.error('MQTT error:', err);
});

注意事项

  • 确保 MQTT 代理地址正确且可访问。
  • 处理连接错误和消息接收异常。
  • 在生产环境中使用 TLS/SSL 加密连接以提高安全性。

浏览器端实现

若需在浏览器中使用 MQTT,可通过 CDN 引入 mqtt.js

js实现mqtt

<script src="https://unpkg.com/mqtt/dist/mqtt.min.js"></script>
<script>
  const client = mqtt.connect('wss://test.mosquitto.org:8081');
  // 其余逻辑与 Node.js 类似
</script>

标签: jsmqtt
分享给朋友:

相关文章

js实现pdf在线预览

js实现pdf在线预览

使用PDF.js实现PDF在线预览 PDF.js是由Mozilla开发的一个开源JavaScript库,可以在网页中直接渲染PDF文件。以下是实现PDF在线预览的步骤: 引入PDF.js库 在HT…

js实现换肤

js实现换肤

使用CSS变量实现换肤 通过CSS变量可以轻松实现主题切换功能。CSS变量在根元素中定义,通过JavaScript动态修改这些变量值。 :root { --primary-color: #349…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js实现驼峰

js实现驼峰

实现驼峰命名的几种方法 使用正则表达式和字符串替换 通过正则表达式匹配字符串中的特定模式(如下划线或短横线),并将其后的字母转换为大写,同时移除分隔符。 function toCamelCase(s…

js实现自举

js实现自举

实现 JavaScript 自举的方法 JavaScript 自举(Bootstrap)通常指通过 JavaScript 动态加载自身或依赖的脚本,实现运行时环境的初始化或扩展。以下是几种常见实现方式…

vue实现js休眠

vue实现js休眠

实现 JavaScript 休眠的方法 在 Vue 中实现 JavaScript 休眠(延迟执行)可以通过以下方式实现。由于 JavaScript 本身没有内置的 sleep 函数,通常使用 Prom…