Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js mqtt

作者:倾尽尘光暖流年   发布日期:2026-07-15   浏览:35

// 引入 mqtt 客户端库
const mqtt = require('mqtt');

// 创建一个 MQTT 客户端连接到指定的服务器
const client = mqtt.connect('mqtt://test.mosquitto.org');

// 连接成功时触发
client.on('connect', () => {
  console.log('Connected to MQTT broker');

  // 订阅主题 'test/topic'
  client.subscribe('test/topic', (err) => {
    if (err) {
      console.error('Failed to subscribe:', err);
    } else {
      console.log('Subscribed to topic: test/topic');
    }
  });

  // 发布消息到主题 'test/topic'
  client.publish('test/topic', 'Hello MQTT', { qos: 0, retain: false }, (err) => {
    if (err) {
      console.error('Failed to publish message:', err);
    } else {
      console.log('Published message: Hello MQTT');
    }
  });
});

// 接收到消息时触发
client.on('message', (topic, message) => {
  console.log(`Received message on topic ${topic}: ${message.toString()}`);
});

// 断开连接时触发
client.on('close', () => {
  console.log('Disconnected from MQTT broker');
});

解释说明:

  1. 引入 mqtt 库:使用 require('mqtt') 来引入 MQTT 客户端库。
  2. 创建客户端连接:通过 mqtt.connect() 方法连接到指定的 MQTT 服务器(例如 mqtt://test.mosquitto.org)。
  3. 连接成功事件:当客户端成功连接到 MQTT 代理时,会触发 connect 事件。在这个事件中,我们可以订阅主题和发布消息。
  4. 订阅主题:使用 client.subscribe() 方法订阅一个或多个主题。
  5. 发布消息:使用 client.publish() 方法向指定主题发布消息。
  6. 接收消息:当有消息到达订阅的主题时,会触发 message 事件,并输出接收到的消息。
  7. 断开连接事件:当客户端与 MQTT 代理断开连接时,会触发 close 事件。

这个示例展示了如何使用 Node.js 和 MQTT 库来创建一个简单的 MQTT 客户端,进行连接、订阅、发布和接收消息的操作。

上一篇:js 字符串转int

下一篇:js array splice

大家都在看

js 数组打乱顺序

js 两个数组取交集

js 数组对象排序

js 对象数组排序

js 数组删掉第一个值

js fill

js fill方法

js 数组连接

js json数组

js 数组复制

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站