npm 包 azure-iothub 使用教程

阅读时长 5 分钟读完

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

纠错
反馈