Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >nodejs mqttjs缺少协议错误

nodejs mqttjs缺少协议错误
EN

Stack Overflow用户
提问于 2018-07-24 14:02:16
回答 1查看 5.5K关注 0票数 3

我试图在nodejs中获得一个mqttjs的工作示例。当我试图在Windows10cmd提示符中使用命令main.js执行node main.js文件时,我收到了这个错误:

错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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()
})
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-24 14:17:32

这是因为(由于错误状态),您忽略了需要传递给connect()方法的URI中的协议。

您已经传递了一个原始IP地址,但是它需要是一个URI,包括一个协议和一个主机。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var client  = mqtt.connect('mqtt://192.168.0.22')

在github和npm上的包中包含的README.md示例中都显示了这一点。

API文档也对此进行了描述:

mqtt.connect(网址,选项) 连接到指定的url和选项指定的代理并返回客户端。 URL可以位于以下协议上:“mqtt”、“mqtts”、“tcp”、“tls”、“ws”、“wss”。URL也可以是URL.parse()返回的对象,在这种情况下,两个对象合并,即可以通过URL和connect选项传递单个对象。

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51508141

复制
相关文章
React中利用Error Boundaries实现错误捕捉
错误边界是一种 React 组件,这种组件可以捕获发生在其子组件树任何位置的 JavaScript 错误,并打印这些错误,同时展示降级 UI,而并不会渲染那些发生崩溃的子组件树。错误边界可以捕获发生在整个子组件树的渲染期间、生命周期方法以及构造函数中的错误
henu_Newxc03
2022/05/18
7770
vue-axios-vuex-全家桶
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。简单来说就是前端最火最简单的一个http请求解决方案。
达达前端
2021/09/08
2.7K0
vue,vue-router,vuex,axios整合
*vue官网:https://cn.vuejs.org/ vue-router官网:https://router.vuejs.org/zh-cn/ vuex官网:https://vuex.vuejs.org/zh-cn/ axios中文说明:https://www.kancloud.cn/yunye/axios/234845 vue-cli建立项目 npm install -g vue-cli 全局安装vue脚手架 vue init webpack-simple project-name 使用w
conanma
2021/11/03
1.2K0
像专业人士一样捕捉 async/await 中的错误
请参考以下代码片段,我们在其中有多个 try catch 块,带有 await 功能。
前端小智@大迁世界
2023/08/16
2650
像专业人士一样捕捉 async/await 中的错误
安卓程序崩溃错误捕捉
在开发安卓程序时,本地测试没任何问题,但去到客户处不是这里麻烦就是哪里不行。最后还来个程序崩溃。。最令人头疼的就是崩溃,因为程序的崩溃总是悄然无息的,有时候根本都没办法进行复现处理,,经过一段的摸索后,总算发现安卓有个程序崩溃前的接口(CrashHandler)在崩溃前会执行,这样就能很好的捕获到错误了。
谭广健
2019/11/13
1.3K0
2.封装axios、本地存储,安装vuex、element
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式 Element 一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库
RtyXmd
2018/08/30
1.4K0
2.封装axios、本地存储,安装vuex、element
axios django CSRF 403错误
使用axios直接post django的接口的时候会提示CSRF 403错误 可以在post的data中转入csrftoken 也可以给单个方法关闭 from django.views.decorators.csrf import csrf_exempt,csrf_protect @csrf_exempt def test(request): pass
小贝壳
2020/03/05
1.4K0
Vuex中的mapGetters
mapGetters([‘language’,’token‘]) 参数是个数组,数组里是你想要映射的getters里的值
全栈程序员站长
2022/07/01
5400
webgis中捕捉功能的实现
本文以openlayers为例,结合turf.js讲一下webgis中绘制和编辑时如何实现捕捉功能。
牛老师讲GIS
2021/12/06
7720
webgis中捕捉功能的实现
axios封装错误请求函数
在使用axios作为请求工具时我们通常不在catch中对错误操作进行处理,我们可以将请求错误的操作放在响应拦截器中进行,日常开发只需要在then做业务即可。
用户6256742
2022/07/06
1.2K0
JS 拦截/捕捉 全局错误 全局Error onerror
 移动Web开发过程中,在真机测试时,往往会遇到一些PC调试无法重现的问题,这时候我们需要在手机上拦截错误,并有相应的输出。 公司和网上都有类似的工具/类库,但如果纯粹一个简单的调试,或许不需要引入工具或类库,我们只需要知道全局拦截的原理。 其实很简单,就是window.onerror 语法: onerror=handleErr function handleErr(msg,url,l) { //Handle the error here return true or false } 浏览器是否显示标准的
用户1258909
2018/07/03
4.2K0
如何使用Vue.js和Axios来显示API中的数据
Vue.js是一个用于构建用户界面的前端JavaScript框架。 它的设计从头开始逐步采用,并与其他图书馆或现有项目完美集成。 这使它非常适合小型项目以及与其他工具和库一起使用的复杂单页应用程序。
子润先生
2021/06/15
8.8K0
Vuex中的核心方法
Vuex是一个专为Vue.js应用程序开发的状态管理模式,其采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。每一个Vuex应用的核心就是store仓库,store基本上就是一个容器,它包含着你的应用中大部分的状态state。
WindRunnerMax
2020/12/01
2.2K0
(五)Vuex 中的Actions
actions 和 mutations 整体上是一样的,但是actions 支持异步代码 mutations 只支持同步代码,另外 actions 不会直接修改全局状态 而是出发 mutations 来修改全局状态
老怪兽
2023/02/22
4240
Vue中的Vuex详解
        C.存储在vuex中的数据是响应式的,当数据发生改变时,页面中的数据也会同步更新
陶然同学
2023/02/27
1.4K0
Vue中的Vuex详解
uniapp 中 vuex 的使用
uniapp 内置了 vuex,不需像 vue 脚手架那样里通过 npm 安装了,我们只需要引用就行了
很酷的站长
2022/12/04
1.4K0
uniapp 中 vuex 的使用
让你的博客在QQ中以XML形式显示
1、复制下面链接,把后面域名更为成自己的 (红色区域,注意域名前面HTTPS),复制到浏览器打开 。
SingYi
2022/07/13
1.7K0
让你的博客在QQ中以XML形式显示
Vuex中的核心方法
Vuex是一个专为Vue.js应用程序开发的状态管理模式,其采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。每一个Vuex应用的核心就是store仓库,store基本上就是一个容器,它包含着你的应用中大部分的状态state。
WindRunnerMax
2020/11/30
2K0
vue中axios的封装
5. 封装post, get 请求 (此示例没有封装,可根据项目情况而定,因为封装后,对于一些特殊接口设置不是太灵活,需要我们项目没有选择封装,如果请求方法比较单一的,可以考虑封装)
用户9914333
2022/07/21
1.3K0
vue中axios的封装
Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。
大龄老码农-昊然
2021/05/13
3.4K0
vue中axios的封装

相似问题

Axios捕捉承诺错误

11

Vuex模块CORS中的Nuxtjs Axios错误

10

Vuex动作-返回Axios返回错误

10

如何从Vuex操作中的axios函数返回错误消息以调度catch(错误)?

29

无法捕捉axios react.js中的错误

34
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文