[解決済み] nodejs mqttjs Missingプロトコルエラー
2022-02-07 08:52:06
質問
nodejsでmqttjsの動作例を取得しようとしています。コマンドを使用してmain.jsファイルを実行しようとすると、次のエラーが表示されます。
node main.js
をWindows 10のcmdプロンプトで表示させています。
のエラーが発生しました。
C:\Users\Rich\Documents\Code\nodejs\onoff\node_modules\mqtt\lib\connect\index.js:64
throw new Error('Missing protocol')
^
Error: Missing protocol
at Object.connect (C:\Users\Rich\Documents\Code\nodejs\onoff\node_modules\mqtt\lib\connect\index.js:64:13)
at Object.<anonymous> (C:\Users\Rich\Documents\Code\nodejs\onoff\main.js:2:20)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)
at Function.Module.runMain (module.js:693:10)
at startup (bootstrap_node.js:188:16)
at bootstrap_node.js:609:3
のコードになります。
var mqtt = require('mqtt');
var client = mqtt.connect('192.168.0.22');
client.on('connect', function () {
client.subscribe('mydevice')
client.publish('presence', 'Hello mqtt')
})
client.on('message', function (topic, message) {
// message is Buffer
console.log(message.toString())
client.end()
})
解決方法は?
これは、(エラーにあるように)あなたが
connect()
メソッドを使用します。
生のIPアドレスを渡しましたが、プロトコルとホストを含むURIである必要があります。
var client = mqtt.connect('mqtt://192.168.0.22')
これは、github とパッケージの両方に同梱されている README.md の例で示されています。 npm .
また、APIドキュメントにも記載されています。
mqtt.connect([url], オプション)
与えられた url とオプションで指定されたブローカーに接続し Clientを返します。
URL には、以下のプロトコルを指定できます: 'mqtt', 'mqtts', 'tcp', tls', 'ws', 'wss'。また、URLは この場合、2つのオブジェクトはマージされます。 URLと接続オプションの両方を一つのオブジェクトに渡します。
関連
-
[解決済み】MongoClient v3.0使用時、db.collectionは関数ではない
-
[解決済み】モジュール 'internal/util/types' が見つかりません。
-
[解決済み] 非推奨パッケージに関するNPM警告メッセージ
-
[解決済み】Express.js req.bodyが未定義です。
-
[解決済み] S3 Bucket に何かを送信しようとすると、AWS Missing credentials が表示される (Node.js)
-
[解決済み] ExpressJS : res.redirect()が期待通りに動作しない?
-
[解決済み] express は `body-parser deprecated undefined extended` としてエラーを投げます。
-
[解決済み] バルク更新を行う。
-
[解決済み] Express.js req.bodyが未定義です。
-
[解決済み] Mongoose Schema がモデルとして登録されていません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】AWS Lambdaでnodejsの「ref」モジュールを使用すると「invalid ELF header」と表示される件
-
[解決済み】Heroku + node.jsのエラー(Webプロセスが起動後60秒以内に$PORTにバインドできなかった)。
-
[解決済み】npm 5で作成されたpackage-lock.jsonファイルはコミットするのでしょうか?
-
[解決済み] EventEmitter のメモリリークの可能性が検出された
-
[解決済み] Passport JSのreq.isAuthenticated()はどのように実装されていますか?[クローズド]
-
[解決済み] TypeError: コールバックはnodejsの関数ではありません。
-
[解決済み] npm install エラー - ローカルの発行者証明書を取得できません。
-
[解決済み] nodejs - http.requestでresponse.writeを使用する場合、第一引数は文字列またはBufferでなければなりません。
-
[解決済み] MongoNetworkError: 最初の接続でサーバー [localhost:27017] への接続に失敗 [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017] 。
-
[解決済み] NPMが同じエラーで固まる EISDIR: ディレクトリに対する不正な操作、エラーで読み込み (ネイティブ)