2步打通API Explorer 和设备接入IoTDA,一看就会【我的IoT端边云体验】
写在前面
这篇博客我们串联一下华为云的两款产品,其一是 API Explorer,其二是设备接入 IoTDA,核心要完成的是,不写代码,调试 IoT 接口。
API Explorer 测试地址:https://console.huaweicloud.com/apiexplorer
设备 IoTDA 接入地址:https://console.huaweicloud.com/iotdm
在正式开始前,你可以先阅读一下橡皮擦的另外三篇博客,学习一些二者的基础内容。
- IoT 设备接入服务,你从这篇博客就能快速上手!【我的 IoT 端边云体验】
- 华为 IoTDA(物联网平台)如何使用 Python SDK 实现应用侧 API 连接【我的 IoT 端边云体验】
- 从初学者的角度,看[华为 IoT]零基础搭建物联网监控大屏 | 数据准备篇【我的 IoT 端边云体验】
了解一些基础概念之后,就可以进入本文的实战环节了。
通过 API Explorer 打通 IoTDA 的第一个接口
深度体验两款产品的第一步,就是有一条线,可以将二者联系起来,这里我选择的是【查询产品列表这一接口】,这里有一个小重点,在测试 API 类平台时,优先选择查询接口,因为不需要组织参数值。
打开 API Explorer 控制面板,参考下图进行选择,部分数据控制台已经帮助我们进行了初始化操作。
接下来点击【调试】按钮,右侧调试结果窗口就会出现调试返回值,如果展示为绿色,恭喜你的第一步已经实现,当然这一步也是最难的一步,打通 API Explorer 和 IoTDA。
下面我们对该接口进行一下基本分析,查看一下如何基于 API Explorer 学习 IoTDA 的相关接口。
第一个要看到的是请求地址,地址格式如下所示:
https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products
该地址可以在 IoTDA 的后台查询到,具体位置如下图所示,任何对接平台找到请求地址都是非常重要的。
上述地址中,还存在一个动态参数 {project_id}
,该值在实战获取的时候是需要提前配置的,参考文档为:https://support.huaweicloud.com/api-iothub/iot_06_v5_1001.html ,其需要在【我的凭证】中进行设置,由于其为准备工作,所以这里是一个小小的门槛。
例如我找到的 API 凭证如下所示,其中项目对应的是 cn-north-4
,翻译到上图中的一个关键点就是,华北-北京四,也就是 Region
的取值。
请求地址获取到之后,就需要查看请求头相关参数
在【调试结果】卡片中,可以找到请求数据的请求头内容,其中有两个参数比较重要,一个是 X-Auth-Token
,另一个是 Instance-Id
,这两个值中又以 用户 token
为重,设置方式参考文档:https://support.huaweicloud.com/api-iam/iam_30_0001.html
调试结果获取完毕,并且显示成功之后,就到了本博客最开心的环节,下载代码示例,这部分是 API Explorer 的必会知识点(我以为的),如果想最快速的把本地的 IoTDA 应用搭建起来,本步骤必不可少。
在上图你会发现各种语言的代码示例,橡皮擦工作主要语言是 Python,所以直接切换即可。在这里有第二个门槛,AK/SK 密钥的设置,在 API Explorer 中华为云会默认给我们生成临时的 AK/SK 值,但下载源码之后就需要自行配置了,例如下载的源码如下所示:
ak = "<YOUR AK>"
sk = "<YOUR SK>"
credentials = BasicCredentials(ak, sk).with_derived_predicate(DerivedCredentials.get_default_derived_predicate()) \
其关键点依旧是在【我的凭证】菜单进行设置,一定要注意密钥要下载文件保存到本地。
到这里我们已经完成了一个整体的测试流程,也成功调用了第一个接口,这里还要补充一个小提示,在【代码示例】选项卡的右侧,还有一个【场景示例】卡片,该卡片中提供了大量 API 场景示例教程,服务场景示例教程,也可以进行扩展学习。
IoTDA 新增设备接口,在 API Explorer 中调参
本博客的第二个小节用来学习 IoTDA 的新增接口,打开左侧的设备管理,找到 AddDEvice
,进入该页面之后,对比前文发现最大的区别在请求体内容上,该接口提供了一些传入参数,例如 nodeid
、product_id
、service_id
等必填项,测试的时候,我们需要手动为其赋值。
拿该接口举例,本接口目标是创建设备,找到 IoTDA 设备接入的 API 文档,
https://support.huaweicloud.com/api-iothub/iot_06_v5_0046.html ,不借助文档,点击参数右侧的问号,也可以查看参数说明。
nodeid
:设备标志码,是一个唯一值,手动编码即可,这里我们输入 ca10088
。
提示信息如下:
设备标识码,通常使用 IMEI、MAC 地址或 Serial No 作为 node_id。
设备标识码长度为 1 到 64 个字符,包含英文字母、数字、连接号“-”和下划线“”。
注意:NB 设备由于模组烧录信息后无法配置,所以 NB 设备会校验 node_id 全局唯一。
取值范围:长度不超过 64,只允许字母、数字、下划线()、连接符(-)的组合,建议不少于 4 个字符。
product_id
:产品 ID,需要提前创建一个产品,然后获取编码,可以在 IoTDA 产品清单页进行查找复制。
设备初始配置中还包括 service_id
和 desired
两个参数,第一次创建可以手动删除。
配置完毕,点击调试,查看是否成功。
无问题,新增设备接口,我们已经调试通过
接下来的步骤相信你已经掌握了,切换到【代码示例】页面,下载 Python 示例代码,修改复制,应用到你的项目案例中即可。
为了便于参数,API Explorer 已经把刚刚我们设置的参数进行了打包下载。
【我的IoT端边云体验】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/378687
此外,在(https://bbs.huaweicloud.com/activity/suggestion.html)提出您的宝贵建议,标题以【云驻计划-定向征文】开头,还有机会赢取额外奖励。
- 点赞
- 收藏
- 关注作者
评论(0)