リアルタイムデータを取得してモバイルアプリに表示する必要があるため、インスタントメッセージングに MQTT を使用することを考えました。 以下は、uniapp に MQTT を導入する全体のプロセスです。 1. uniappプラグインマーケットのリファレンスプラグインhttps://ext.dcloud.net.cn/plugin?id=854 2. 具体的な導入プロセス1. mqttとuuidをインストールするコマンドラインを実行して、uniapp プロジェクトのルート ディレクトリにそれぞれ mqtt と uuid をインストールします。uuid は後で mqtt の clientId を生成するために使用されるため、ここでは一緒にインストールされます。 [email protected] をインストールします npm インストール uuid 追伸 ①ここで私がインストールしたmqttのバージョンは、uniappが提供しているプラグインと同じです。最新バージョンもインストールしようとしましたが、エラーが報告されます、うーん…… ②pakage.jsonがない場合、インストール時にエラーが表示されますが、インストールおよび使用には影響ありません。もっと便利にしたい場合は、プロジェクトのルート ディレクトリに pakage.json ファイルを追加し、次のコンテンツを追加できます。 { "名前": ""、 "バージョン": "1.0.0", "説明": ""、 "著者": ""、 「ライセンス」: 「MIT」、 「依存関係」: { "mqtt": "^3.0.0", "UUID": "^8.3.0" }, "devDependencies": {}, 「スクリプト」: {} } 2. このページではmqttを紹介し、①mqtt接続設定は/utils/mqtt.jsに配置され、グローバルに利用可能です。 export const MQTT_IP = '192.168.9.128:8083/mqtt' //mqtt アドレス ポート const MQTT_USERNAME = 'public' //mqtt ユーザー名 const MQTT_PASSWORD = 'public' //パスワード export const MQTT_OPTIONS = { 接続タイムアウト: 5000、 クライアントID: ''、 ユーザー名: MQTT_USERNAME、 パスワード: MQTT_PASSWORD、 クリーン: 偽 } ②vueページ参照mqtt MQTT の clientId は、異なるページが異なるトピックをサブスクライブするときにデータが固定されないように、uuid を使用して一意の識別コードを生成し ます。 <スクリプト> 'uuid' から { v4 } をインポートします。 輸入 { 、 MQTT_オプション } '@/utils/mqtt.js' から; var mqtt = require('mqtt/dist/mqtt.js') varクライアント エクスポートデフォルト{ データ() { 戻る { topic: '' // 購読するトピック} }, マウント() {this.connect() //接続}, メソッド: { 接続する() { MQTT_OPTIONS.クライアントID = v4() var that = これ // #ifdef H5 クライアント = mqtt.connect('ws://' + MQTT_IP, MQTT_OPTIONS) // #終了 // #ifdef MP-WEIXIN||APP-PLUS クライアント = mqtt.connect('wx://' + MQTT_IP, MQTT_OPTIONS) // #終了 クライアント.on('接続', 関数() { console.log('接続成功') client.subscribe(that.topic, function(err) { もしエラーが起きたら console.log('サブスクリプションが成功しました') } }) }).on('再接続', 関数(エラー) { console.log('再接続中...', that.topic) }).on('エラー', 関数(エラー) { console.log('接続に失敗しました...', error) }).on('end', 関数() { console.log('接続が切断されました') }).on('メッセージ', 関数(トピック, メッセージ) { console.log('プッシュ情報を受信:', message.toString()) }) } } } </スクリプト> 3. 運用結果データはリアルタイムで変化します。 以上が、uniapp で MQTT を使用する方法の共有です。 以上が、uniapp プロジェクトにおける MQTT の使用方法の詳細です。uniapp の MQTT の使用に関する詳細については、123WORDPRESS.COM 内の他の関連記事にも注目してください。 以下もご興味があるかもしれません:
|
<<: Linux環境にRedisをデプロイし、Dockerにインストールする方法
>>: MySQL エラー コード 1862 の解決方法: パスワードの有効期限が切れています
私は長い間PHPに触れてきましたが、インストール環境は非常に不慣れです。多くの問題に遭遇しました。B...
データベースはスロークエリログを有効にします設定ファイルを変更する設定ファイルmy.iniに次の2つ...
目次序文1. 新しいVueプロジェクトを作成する2. WebStormの設定1. デバッガポートを設...
インターネットの発達により、バスを待ったり地下鉄に乗ったりする時間など、断片的な時間を活用して、いつ...
背景:サイトはフロントエンドとバックエンドから分離されています: vue+springbootフロン...
最も一般的に使用されるレイアウト要素として、DIV は Web 開発において重要な役割を果たします。...
主に低バージョンのブラウザ向け<!-- --> は HTML コメント タグです。上位バ...
MySQL 8.0.16 にインストールする場合、「UTF8B3」ではなく「UTF8B4」が使用さ...
今日、HTML に問題を発見しました。多くのデフォルト フォントが提供されていますが、「Bold」、...
目次1. 解決策2. サーバーから返されたトークンをブラウザに保存する3. リクエストにアクセス権限...
C++でMySQLに接続する際の参考情報です。具体的な内容は以下のとおりです。 MySQLCon ク...
一般的に言えば、HTML ドキュメント内で極端に大きな <ol> リストに遭遇する可能性...
序文この記事では、最近私が遭遇した 2 つの状況について説明します。今後、新たな発見があれば追加して...
MySQL のデフォルトの varchar 型は大文字と小文字を区別しません (insensitiv...
以前書いた内容が詳細さに欠けていたため、今回は修正・補足しました。ただし、以前の MySQL バージ...