npm 包 azure-iothub 使用教程

Azure IoTHub 是微软提供的一款可实现物联网场景下设备和云端通信的服务。npm 包 azure-iothub 提供了一组 Node.js API,使得开发者可以在 Node.js 环境下与 Azure IoTHub 进行交互。本篇文章将详细介绍如何使用 npm 包 azure-iothub。

环境要求

在开始使用 azure-iothub 进行开发之前,需要满足以下条件:

  • 已有 Azure 帐户,且订阅了 IoTHub 服务
  • 已安装 Node.js 12.0 及以上版本
  • 已新建了一个 IoTHub

安装

在命令行中,进入项目所在的根目录,打开终端并执行以下命令:

--- ------- ------------ ------

安装成功后,即可开始使用 azure-iothub 进行开发。

配置

在项目中,需要先进行一些配置,才能与 IoTHub 服务进行交互。配置主要包括以下几方面内容:

  • IoTHub 服务信息
  • 设备(Device)信息

IoTHub 服务信息配置

在 IoTHub 服务中,需要为该服务分配一个连接字符串(Connection String),该字符串含有与该服务通讯所需的必要信息。

在 Azure 门户中,进入已创建的 IoTHub 服务,点击左侧菜单栏中“共享访问策略”。

再点击“iothubowner”访问策略,会出现该访问策略的详细信息。其中就包括该访问策略的连接字符串。

将该字符串复制下来,作为后续开发的 IoTHub 服务的连接字符串。

设备信息配置

在与 IoTHub 服务进行通讯时,需要对设备进行认证。对于开发者而言,在 Node.js 中,可以使用 azure-iothub 中的 Device 模块,用于实例化设备对象。在实例化设备对象时,需要提供以下属性:

  • id:设备 ID,必填
  • connectionString: 服务连接字符串,必填
  • hostName:服务地址,选填

示例代码如下:

----- - ------ - - ------------------------

----- -------- - -----------
----- ---------------- - ------------------------------------------------------------------------------------------------

----- ------ - --------------------------------------------- ----------

至此,设备已经被成功实例化。

设备操作

在成功实例化设备对象后,就可以开始对设备进行操作了。

发送消息

使用 azure-iothub 中的 Message 模块,可以实现向 IoTHub 服务发送消息。示例代码如下:

----- - ------- - - ------------------------

----- --- - --- ------------------------ ------------ -- ----
--------------------- ----- ---- -- -
    ----------------- --------- ----- -------------------
    --------------------- ---- -------- ----------------------------
---

上述代码用于将一个 JSON 格式数据进行封装,并发送给 IoTHub 服务。发送完成后,会输出发送的内容,以及服务的响应消息。需要注意的是,这里使用的是 sendEvent 方法将消息发送出去。

接收消息

类似的,也可以使用 azure-iothub 中的 Receiver 模块,用于接收从设备发送回来的消息。示例代码如下:

----- - ---------------- - - ------------------------

----- -------- - --- ----------------------------------------- -------------------

---------------------------- --- -- -
    --------------------------- -----------------------
---

---------------------- ----- -- -
    --------------------- -------- -------------------
---

以上代码用于订阅名为“messages/events”的事件,来监听与之关联的 IoTHub 上产生的设备消息。当有消息产生时,就会触发回调函数,并打印出该消息。

结论

本篇文章介绍了如何使用 npm 包 azure-iothub,来实现 Node.js 与 Azure IoTHub 的交互。由于篇幅的限制,文章并未对该包提供的许多其他功能进行详细介绍。读者可以通过官方文档,进行更进一步的学习及实践。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedaabdb5cbfe1ea0610579


猜你喜欢

  • npm 包 @atlaskit/radio 使用教程

    在前端开发中,我们常常需要使用各种 UI 组件进行开发。其中,单选框组件是常用的组件之一,以方便用户进行选择。@atlaskit/radio 是一个基于 React 开发的,用于构建单选框组件的组件库...

    4 年前
  • npm 包 projector-spawn 使用教程

    简介 npm 是前端开发中常用的包管理工具,通过 npm,我们能够方便地安装、更新、卸载 JavaScript 包,也可以发布自己的包供他人使用。 projector-spawn 是一个基于 node...

    4 年前
  • npm 包 @atlaskit/single-select 使用教程

    在前端开发中,选择器(Select)组件是非常常见的一种UI组件,而@atlaskit/single-select是一个基于React的选择器组件,可以使用npm包来引入。

    4 年前
  • npm 包 @atlaskit/textarea 使用教程

    在前端开发中,文本输入框是常常用到的组件,@atlaskit/textarea 是一个高度可定制的输入框组件,可以有效地提高我们的工作效率。 安装 @atlaskit/textarea 在项目根目录中...

    4 年前
  • npm 包 danger-plugin-istanbul-coverage 使用教程

    什么是 danger-plugin-istanbul-coverage? danger-plugin-istanbul-coverage 是一个用于 danger 的插件,通过它我们可以在 pull ...

    4 年前
  • npm 包 @keyv/sql 使用教程

    介绍 @keyv/sql 是一个 Node.js 的 npm 包,用于将 Key-Value 数据存储在关系型数据库中。该包封装了 SQL 查询和操作,使得在 Node.js 应用程序中使用 SQL ...

    4 年前
  • NPM 包 testcafe-browser-provider-saucelabs 使用教程

    TestCafe 是一个端到端的 Web 应用程序自动化测试框架。Sauce Labs 是一个基于云的跨浏览器测试平台。testcafe-browser-provider-saucelabs 是一个 ...

    4 年前
  • npm 包 @keyv/test-suite 使用教程

    前言 npm是前端开发的重要工具之一,可以用来管理项目的依赖、发布个人的包等。而@keyv/test-suite作为其中的一员,提供了方便的测试套件,可以帮助我们更好地测试自己的代码。

    4 年前
  • npm 包 requirable 使用教程

    简介 requirable 是一个 npm 包,它可以让你在客户端使用 CommonJS 的 require 函数来引入模块。这样,你就可以在客户端上像在服务端一样使用模块了。

    4 年前
  • NPM 包 aes256 使用教程

    AES256 是一种对称加密算法,它使用相同密钥来加密和解密数据。在前端开发中,我们经常需要对一些敏感信息进行加密处理,以防止被黑客攻击或窃取。这时候,可以使用 NPM 包 aes256 来实现数据的...

    4 年前
  • NPM 包 this 使用教程

    在前端开发中,使用一些优秀的第三方工具是无法避免的。而 NPM 包是一个非常流行的工具,它为我们提供了许多在前端开发中需要的功能。在 NPM 包中,this 是一个非常重要的概念。

    4 年前
  • npm 包 appolo-event-dispatcher 使用教程

    在前端开发过程中,我们常常需要对事件进行管理和处理。对于多维度和复杂的应用程序,我们需要一个可靠的事件管理框架,这时候 npm 包 appolo-event-dispatcher 可能会成为你的一个好...

    4 年前
  • NPM 包 Apollo-Route 使用教程

    如果你是一个前端开发者,你一定不会对 Apollo-Route 这个 NPM 包感到陌生。它是一个非常流行的路由管理工具,帮助开发者更轻松地管理页面路由,提高开发效率。

    4 年前
  • npm 包 appolo-agent 使用教程

    在现代Web开发中,构建高效的应用程序以及保持其性能和稳定性已经成为了开发人员的首要目标。为了实现这一点,使用工具来分析和监视应用程序是很重要的。Appolo Agent是一个优秀的npm包,可以帮助...

    4 年前
  • npm包 @appolo/events使用教程

    简介 @appolo/events是一款轻量级的事件库,能够在前端和后端应用中实现事件驱动程序的设计模式。 安装 通过npm安装: --- ------- -------------- ------初...

    4 年前
  • npm包@appolo/inject使用教程

    在前端开发中,使用npm包已经成为了非常常见的操作。在依赖管理方面,npm是所有前端开发者最常用的工具之一。在本文中,我们将介绍npm包中的一个重要组件:@appolo/inject,包含详细的使用教...

    4 年前
  • npm 包 @appolo/utils 使用教程

    前言 在前端开发中,我们经常会使用到各种各样的工具库,这些工具库可以极大的提升我们的开发效率,@appolo/utils 就是一款非常优秀的工具库,它包含了很多实用的函数,可以帮助我们快速的完成一些常...

    4 年前
  • npm 包 appolo-cache 使用教程

    appolo-cache 是一个简单易用的缓存管理工具,可以轻松地在你的前端应用中使用。本文将为你介绍 appolo-cache 的使用方法,包括安装、配置、API 等方面。

    4 年前
  • npm 包 @appolo/helpers 使用教程

    前言 在前端开发中,npm 是一个不可忽略的工具,它为我们提供了无数实用的 JavaScript 包来完成我们的开发任务。本文主要介绍 @appolo/helpers 这个工具包的使用,它是一个为 N...

    4 年前
  • npm 包 appolo-engine 使用教程

    在现代的前端开发中,很多网站和应用都使用了 React、Angular 和 Vue 等框架。这些框架提供了很多的功能和工具,但是我们还需要一些额外的工具,来帮助我们构建更好的应用。

    4 年前

相关推荐

    暂无文章