uniapp中mqtt的基本使用


參考文檔:

[1] https://www.hivemq.com/blog/mqtt-client-library-mqtt-js/

[2] https://www.tabnine.com/code/javascript/functions/mqtt/MqttClient/on

[3] https://docs.cloudplugs.com/kb/Developer-Guides/MQTT-API/Javascript-Examples

[4] https://blog.51cto.com/olivetree/1621128?winzoom=1

[5] https://www.emqx.com/zh/blog/mqtt-js-tutorial


1. 新建uniapp項目

2. 安裝mqtt

npm install mqtt@3.0.0 --save

3. 創建一個mqtt客戶端

// 改變client
// #ifdef H5
var preStr = "wss://";
var mqtt = require('mqtt'); //改變mqtt,h5可以直接寫'mqtt'
// #endif
// #ifdef MP-WEIXIN||APP-PLUS
var preStr = "wxs://";
var mqtt = require('mqtt/dist/mqtt.js'); //小程序必須寫'mqtt/dist/mqtt.js'
// #endif

var client = mqtt.connect(preStr + url,MQTT_OPTIONS);//mqtt.connect([url], options)
/**
* connect、error、reconnect、message、end、close都是回調函數
* 在相應的狀態自然會調用
*/
client.on('connect', function() {
    console.log('MQTT client is connected');
}).on('error', (e) => {
    console.log('MQTT error:', e);
}).on('reconnect', function() {
    console.log('MQTT client is reconnect...');
}).on('message', function(topic, message) {
    console.log('topic:', topic);
    console.log("message: ", message.toString());
}).on('end',function(){
    console.log('MQTT client is end');
}).on('close', function() {
    console.log('MQTT connection closed, now exiting.');
});

/**
* topic, msg 是根據文檔定義的
* 先訂閱,再發布
*/
client.subscribe(topic);
client.publish(topic, msg);

/* 退訂主題 */
client.unsubscribe(topic);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM