MQTT在react-native中的運行


mqtt

  1、什么是mqtt?

  MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸協議),是一種基於發布/訂閱(publish/subscribe)模式的"輕量級"通訊協議,輕量,高效,具體,請參考菜鳥教程 : https://www.runoob.com/w3cnote/mqtt-intro.html

  2、mqtt的幾個重要概念

  • MQTT協議中有三種身份:發布者(Publish)、代理(Broker)(服務器)、訂閱者(Subscribe)
  • MQTT傳輸的消息分為:主題(Topic)和負載(payload)

  3、mqtt的幾個方法

  • (1)Connect。等待與服務器建立連接。
  • (2)Disconnect。等待MQTT客戶端完成所做的工作,並與服務器斷開TCP/IP會話。
  • (3)Subscribe。等待完成訂閱。
  • (4)UnSubscribe。等待服務器取消客戶端的一個或多個topics訂閱。
  • (5)Publish。MQTT客戶端發送消息請求,發送完成后返回應用程序線程。

開始

  1、地址https://github.com/Introvertuous/react_native_mqtt.git

  2、安裝

yarn add react_native_mqtt

  3、使用

  

import init from 'react_native_mqtt';
import AsyncStorage from '@react-native-community/async-storage';

init({
  size: 10000,
  storageBackend: AsyncStorage,
  defaultExpires: 1000 * 3600 * 24,
  enableCache: true,
  reconnect: true,
  sync: {}
});


第一步:創建
// 地址,端口,路徑(這么寫就行了),connectId(隨便寫)  :地址和端口,都是后台給,或者你自己弄個mqtt的服務
let client = new Paho.MQTT.Client('192.168.0.63', 8083, '/mqtt', '/mqttjs_db6017d322')


第二步:連接,暫時有一個參數,2個方法:成功,失敗
client.connect({
      useSSL: false,
      onSuccess: onConnect,
      onFailure:(e)=>{ console.log('失敗'); console.log(e); }
});
// 成功后需要發送主題 ,就是一個接口的路徑類似
function onConnect(){
    console.log('成功');
    client.subscribe(‘/fangtao’);
}
第三步:斷掉
client.onConnectionLost = onConnectionLost;

function onConnectionLost (responseObject) {
    if (responseObject.errorCode !== 0) {
      console.log('onConnectionLost:' + responseObject.errorMessage);
    }
  }

第四步:接收消息
client.onMessageArrived = onMessageArrived;

function onMessageArrived (message) {
    console.log('消息:' + message.payloadString);
  }

感受一下

run起來,連接成功

 

 后台推送一個消息過來

 

 看看前台接收到沒?

 

 成功!

 


免責聲明!

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



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