本文介绍了Node.js环境下Link SDK的配置与使用。
前提条件
安装Node.js运行环境,版本需要≥4.0.0 。
通过npm包管理工具安装Link SDK
将Link SDK安装到Node.js项目所在目录。
适用于开发者已创建自己的项目,然后集成阿里云的Link SDK:
npm install -g alibabacloud-iot-device-sdk --save
将Link SDK进行全局安装。
适用于开发者直接编写了一个js文件(该文件引用了阿里云的Link SDK),然后直接使用node xxx.js运行该js程序的场景。这种情况需要将Link SDK进行全局安装,命令如下所示:
npm install alibabacloud-iot-device-sdk --save
全局安装后运行程序常见错误:
如果在Windows下运行js程序时提示
Error: Cannot find module 'alibabacloud-iot-device-sdk
,请在环境变量中增加NODE_PATH
变量,其值设置为Link SDK安装所在的目录。如下图所示:说明下图中的NODE_PATH的变量值需要修改为开发者自己设备上Link SDK安装所在的目录。
如果在Linux下直接使用Node命令运行指定的js程序时,提示
Error: Cannot find module 'alibabacloud-iot-device-sdk'
,也是由于没有设置NODE_PATH变量引起,可以运行命令npm root -g
获取npm的模块安装目录,并将该目录设置到NODE_PATH环境变量并生效(比如重启Linux)后再次使用Node命令加载js程序。
源码下载
目前Node.js Link SDK已经开源,请参见alibabacloud-iot-device-sdk。
如何引用Link SDK
node程序引用Link SDK。
使用Link SDK提供的API需要在js代码中加入对SDK的依赖,如下所示:
const iot = require('alibabacloud-iot-device-sdk');
浏览器、支付宝小程序等场景集成Link SDK。
说明如果支付宝版本升级后导致支付宝小程序无法使用alibabacloud-iot-device-sdk.js,请使用支付宝定制版本alibabacloud-iot-device-sdk-1.2.8-alimin-compatible.js,该文件位于dist目录下。
const iot = require('./dist/alibabacloud-iot-device-sdk.js'); //引用路径以实际为准 // 支付宝小程序请使用./dist/alibabacloud-iot-device-sdk-1.2.8-alimin-compatible.js
js文件下载地址:
版本变更
记录各个版本的主要变动。
1.2.8
解决支付宝版本升级后导致支付宝小程序无法使用的问题。
1.2.7
修改了事件上报、属性上报中给出参数的定义。
增加onProps对属性设置进行处理。
包名的修改,从aliyun-iot-device-sdk正式改名为alibabacloud-iot-device-sdk。
增加对支付宝小程序、浏览器等场景的支持。
onService中增加reply函数,并支持同步和异步调用。
增加onConfig方法用于订阅云端远程配置更新。
增加部分功能的example。
重写了网关子设备subdevice的实现。
1.0.1
增加设备标签上报功能。
增加删除标签功能。
增加了设备动态注册功能。
增加设备影子相关功能。
增加获取设备配置功能。