这次有幸收到了邀请参加华为2021HDC大会, 这次旅途真是受益匪浅,认识了许多华为的技术大牛,一起讨论了好多东西,也学到了很多,我将继续努力虚心学习,不负众望,冲冲冲~

同时也面基了咱美美哒IoT小助手小姐姐

1.你的职业/工作内容是什么?

我现在是一名高校大三的小萌新,计算机科学与技术专业,现任华为云HERO联盟盟主,华为云·云享专家,华为云IoT云享专家,华为云优秀学生代表,华为鲲鹏论坛外部版主、学院团总支委员会委员,学院网络工作室架构师,华为云优秀云创贡献官,华为云2020年度人物-校园之星,我特别喜欢分享,就像前面老师们说的开源精神,虽然我拥有的并不多,但我很乐意分享,我会把我学到的知识呀经验呀,总结起来说给其他小伙伴们听,一起交流一起进步,三个臭皮匠顶个诸葛亮嘛

2. 你擅长哪些技术/语言/领域?

比较喜欢和研究云计算、大数据、物联网、人工智能、算法、数据结构、操作系统、编译原理、计算机组成原理、计算机体系结构、计算机网络这一块知识,熟悉相关的物联网方面知识,熟悉华为海思Hi3861产品

3.     因何参与本次活动:奖品/知识/技能/体验/其他?

参加这次活动,主要是为了能够提高自己的专业知识,掌握一技之长,同时通过小实践来增加对华为云IoT产品的熟悉和使用技巧,好分享给学校里喜欢的同学们一起研究,同时也为接下来的比赛增加点思路和开发能力,同时通过这次活动也让我认识了许多小伙伴和技术大牛们,超开心,真的是受益匪浅,学有所成

4.    是否第一次使用华为云IoT产品?体验如何

已经有数不清多少次使用华为云IoT产品了,哈哈哈,参加过好多次IoT的活动和体验,而且也成功拿到了3个华为云IoT的微认证了,就差HCIA-IoT(疯狂暗示小助手,嘿嘿嘿)每次都收获满满,学到很多超有用的干货,还有一些有意思的训练营,就比如前久的HCIA-IoT训练营,成绩也蛮不错,差点就抽到HCIA考试券了,有点小遗憾;使用华为云IoT产品有超详细的说明文档,但是有时候会有一点琐碎,就是在解决一个问题时得找好多个文档感觉有点麻烦,不过慢慢的都在变的越来越好了,而且还有超详细的学习路线,超赞~

随机送一波【福利】:云服务器 免费领取

5.     在体验过程中遇到了哪些问题?如何解决的?6.     在操作过程中有哪些小技巧可以分享给大家?

就是在第一关场景体验那里,三个设备注册完成,查看设备列表,显示的是未激活状态,但是截图要求是在线状态,我觉得这个小问题有点意思,留给读者思考的空间,让我想到了我以前常用的一个软件来解决——华为设备模拟器HubSimulator

嘿嘿嘿,于是我翻箱底,找见了它,连接模拟设备后不就激活了嘛,不就是在线状态了嘛,这也是操作过程中的小技巧可以分享给大家,理论存在实践开始:

①服务IP:进入“服务列表”-> “物联网”->“设备接入IoTDA”,在左侧栏选择“总览”,复制使用MQTT/MQTTS接入信息的域名。

②设备ID:配置智慧路灯应用,注册设备成功后返回的设备Id

③设备密钥:配置智慧路灯应用,注册设备成功后返回的密钥配置好以上参数后,点击“建立连接”按钮。

嘿嘿嘿,连接成功,完美解决,而且这个还是中文版的还是熟悉的操作,熟悉的配方,所以接下来的步骤都轻车熟路,三下五除二,搞定~

7.     对华为云IoT的产品/活动/其他 有何建议?

无论是活动还是产品,都很赞,有超详细的教程,有丰富多彩的活动,和小奖品,还有沙箱小实践,都是很不错的学习机会,学练结合的方式超赞,而且还有那么多的干货,超赞啊,受益匪浅,超详细的学习路线,唯一就是学习微认证(基于物联网平台的自贩机销量分析)里的视频,感觉声音听着特别难受,声音处理的很不清晰,而且有点尖锐,很刺耳,感觉不是很好

其他IoT相关产品使用或体验总结&技术干货分享

华为云IoT应用侧开发

为了降低应用侧的开发难度、提升应用侧开发效率,物联网平台向应用侧开放了 API。开发者可以调用开放的 API,快速集成物联网平台的功能,如产品管理、设备管理、订阅管理、设备
命令、规则管理等功能。

应用侧需先通过 IAM 服务鉴权,获取 Token 后,方可实现相关产品管理、设备管理等功能。

如何调用 API

华为云物联网平台提供多样的北向 Restful API 接口给应用开发者,方便应用开发者能够基于平台提供的能力快速开发出物联网应用。

构造请求

请求 URI 由如下部分组成:

{URI-scheme} :// {Endpoint} / {resource-path} ? {query-string}

尽管请求 URI 包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。

URI-scheme:表示用于传输请求的协议,当前所有 API 均采用 HTTPS 协议。
Endpoint:指定承载 REST 服务端点的服务器域名或 IP,不同服务不同区域的 Endpoint 不同,您可以从地区和终端节点中获取。例如物联网平台在“华北-北京四”区域的 Endpoint 为
“iotda.cn-north-4.myhuaweicloud.com”。
resource-path:资源路径,也即 API 访问路径。从具体 API 的 URI 模块获取,例如“查询产品”API 的 resource-path 为“/v5/iot/{project_id}/products/{product_id}”。
query-string:查询参数,是可选部分,并不是每个 API 都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“limit=10”,表示查询不超过 10 条数据。
例如您需要在物联网平台获取在“华北-北京四”区域下的指定产品信息,则需使用“华北-北京四”区域的 Endpoint(iotda.cn-north-4.myhuaweicloud.com),并在查询产品的 URI 部分找到 resource-path(/v5/iot/{project_id}/products/{product_id}),拼接起来如下所示。

https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products/{product_id}

请求方法

HTTP 请求方法(也称为操作或动词),它告诉服务你正在请求什么类型的操作。
GET:请求服务器返回指定资源。
PUT:请求服务器更新指定资源。
POST:请求服务器新增资源或执行特殊操作。
DELETE:请求服务器删除指定资源,如删除对象等。
HEAD:请求服务器资源头部。
PATCH:请求服务器更新资源的部分内容。当资源不存在的时候,PATCH 可能会去创建一个
新的资源。
在查询产品的 URI 部分,您可以看到其请求方法为“GET”,则其请求为:

GET https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products/{product_id}

请求消息头

附加请求头字段,如指定的 URI 和 HTTP 方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。
如下公共消息头需要添加到请求中。
Content-Type:消息体的类型(格式),必选,默认取值为“application/json”,有其他取值时会在具体接口中专门说明。
X-Auth-Token:用户 Token。当使用 Token 方式认证时,必须填充该字段,可通过调用获取用户 Token 接口获取,接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户Token。
对于查询产品接口,由于需要认证,所以需要添加“Content-Type”和“X-Auth-Token”到头域,添加消息头后的请求如下所示。

GET https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products/{product_id}
Content-Type: application/json
X-Auth-Token:******

请求消息体

请求消息体通常以结构化格式发出,与请求消息头中 Content-type 对应,传递除请求消息头之外的内容。若请求消息体中参数支持中文,则中文字符必须为 UTF-8 编码。
每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE 操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而
定。
对于创建产品接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示,加粗的斜体字段需要根据实际值填写,如:其中 name 为产品名称,device_type 为设备类型,protocol_type 为设备使用的协议类型。

POST https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/abab***cdcd/products
Content-Type: application/json
X-Auth-Token: ********
{"name" : "Thermometer","device_type" : "Thermometer","protocol_type" : "MQTT","data_format" : "binary","manufacturer_name" : "ABC","industry" : "smartCity","description" : "this is a thermometer produced by Huawei","service_capabilities" : [ {"service_type" : "temperature","service_id" : "temperature","description" : "temperature","properties" : [ {"unit" : "centigrade","min" : "1","method" : "R","max" : "100","data_type" : "decimal","description" : "force","step" : 0.1,"enum_list" : [ "string" ],"required" : true,"property_name" : "temperature","max_length" : 100} ],"commands" : [ {"command_name" : "reboot","responses" : [ {"response_name" : "ACK","paras" : [ {"unit" : "km/h","min" : "1","max" : "100","para_name" : "force","data_type" : "string","description" : "force","step" : 0.1,"enum_list" : [ "string" ],"required" : false,"max_length" : 100} ]} ],"paras" : [ {"unit" : "km/h","min" : "1","max" : "100","para_name" : "force","data_type" : "string","description" : "force","step" : 0.1,"enum_list" : [ "string" ],"required" : false,"max_length" : 100} ]} ],"option" : "Mandatory"} ],"app_id" : "jeQDJQZltU8iKgFFoW060F5SGZka"
}

认证鉴权

调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。
Token 认证:通过 Token 认证通用请求。
AK/SK 认证:通过 AK(Access Key ID)/SK(Secret Access Key)加密调用请求。
Token 认证:
Token 是服务端生成的一串字符串,作为客户端进行请求的一个令牌。第一次登录后,服务器生成一个 Token 并将此 Token 返回给客户端,以后客户端只需带上这个 Token 前来请求数据即可,无需再次带上用户名和密码。Token 有效期是 24 小时,从客户端获取开始算起(24 小时是相对时间),需要使用同一个 Token 鉴权时,建议缓存起来使用,避免频繁调用。在 Token 过期前,务必刷新 Token 或重新获取 Token,否则 Token 过期后会在服务端鉴权失败。

如果您获取 Token 多次,以最新的为准,前面的 Token 会被覆盖并失效。Token 在计算机系统中代表令牌(临时)的意思,拥有 Token 就代表拥有某种权限。Token认证就是在调用 API 的时候将 Token 加到请求消息头,从而通过身份认证,获得操作 API 的权限。
调用获取 IAM 用户 Token(使用密码)接口获取 Token,调用样例如下:

POST https://iam.cn-north-4.myhuaweicloud.com/v3/auth/tokens
Content-Type: application/json
{ "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "name": "xxxxxxxx" } } }
}

注:“username”即 IAM 用户名、“password”即登录华为云密码、“domainname”即账号名,“projectname”项目。

接口返回的响应消息头中“X-Subject-Token”就是需要获取的用户 Token。获取 Token 后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值为获取到的 Token。例如 Token 值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。

GET https://iotda.cn-north-4.myhuaweicloud.com/v5/iot/{project_id}/products/{product_id}
Content-Type: application/json
X-Auth-Token: ABCDEFJ....

AK/SK 认证:
AK/SK 签名认证方式仅支持消息体大小 12M 以内,12M 以上的请求请使用 Token 认证。
AK/SK 认证就是使用 AK/SK 对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。
AK(Access Key ID):访问密钥 ID。与私有访问密钥关联的唯一标识符;访问密钥 ID 和私有访问密钥一起使用,对请求进行加密签名。
SK(Secret Access Key):与访问密钥 ID 结合使用的密钥,对请求进行加密签名,可标识发送方,并防止请求被修改。
使用 AK/SK 认证时,您可以基于签名算法使用 AK/SK 对请求进行签名,也可以使用专门的签名 SDK 对请求进行签名。
签名 SDK 只提供签名功能,与服务提供的 SDK 不同,使用时请注意

返回结果

状态码:
请求发送以后,您会收到响应,包含状态码、响应消息头和消息体。
状态码是一组从 1xx 到 5xx 的数字代码,状态码表示了请求响应的状态,完整的状态码列表请参见状态码。
对于创建产品接口,如果调用后返回状态码为“201”,则表示请求成功。
响应消息头:
对应请求消息头,响应同样也有消息头,如“Content-type”等。
对于创建产品接口,平台会返回“Content-type”、Date 等消息头。
响应消息体:
响应消息体通常以结构化格式返回,与响应消息头中 Content-type 对应,传递除响应消息头之外的内容。(转载自:华为云)

最后,按照惯例,随机送一波【福利】:

云服务器 免费领取https://account.huaweicloud.com/obmgr/invitation/invitation.html?bpName=c28556baf2064d5c82dc3bf982750b34&inviteCode=huawei02&bindType=1&isDefault=0

【IoT】0基础玩转华为IoT学习分享相关推荐

  1. 0基础极速入门!深度学习高层API最强官方课程

    近年来,随着深度学习技术的飞速发展,基于深度学习方法的前沿研究与应用实践在学术界与工业界大放异彩. 但是,对零基础的技术小白而言,深度学习并不是一个友好的领域.晦涩的理论.冗长的代码.复杂的调试.鱼龙 ...

  2. 松勤软件测试0基础到项目实战系统学习全栈班完整分享

    学习编程的一个很好的方法就是和其他的程序员交谈.不必谈论任何特定的内容.可以是你正在学习的东西,也可以是你认为很酷的东西,更可以是你正在工作的东西,皆可.你会发现很多程序员并不喜欢只是聊编程.这样做可 ...

  3. 公有iot私有iot架构_玩洋葱Omega IoT设备在OLED屏幕上显示实时血糖

    公有iot私有iot架构 I've been playing with IoT stuff on my vacation. Today I'm looking at an Onion Omega. T ...

  4. 【0基础快速入门】Python学习快速参考手册

    Python学习快速参考手册 目录 文章目录 Python学习快速参考手册 目录 @[toc] 下载 Python下载与配置 IDE下载与配置 第一章 · Python的基本语法 变量 数据类型 注释 ...

  5. 0基础玩转CV的利器绝了,还送万元礼金,机不可失!

    世界瞬息万变,虽有颗进步的心但总跟不上节奏是一种什么体验?当高楼里又迸发出因财富自由而激动的呐喊声时,你在不分昼夜地闷头POC:当24岁程序猿辞职去环游世界时,你才懵懂地开始摸索转型AI开发:当别人正 ...

  6. 我是小白0基础,现在我想学习前端开发,该如何系统的学习?

    以下纯属个人观点和建议,肯定是有局限性的,但是也希望能给你带来一些帮助. 开始 我们俨然能感受到前端岗位现在已经发展成了最重要的研发岗位之一,所以多我们提出的要求也就越来越高了.所以我们需要的也就不仅 ...

  7. 0基础玩转C语言—初识C语言(上)

    初始C语言(上) 一.开门见山 1.1.第一个C语言程序 1.2.程序解剖 二.数据类型 2.1.为什么引入数据类型? 2.2.C语言中有哪些基本数据类型? 2.3.每种类型的大小是多少? 2.4.数 ...

  8. 0成本+0基础玩转跨境电商开店创业项目,月入数万元

    你错过了03年的淘宝创业热潮,你还想错过16年的跨境电商创业浪潮吗?  或许,您现在是刚毕业的学生,为工作而犯愁--  或许,您是辛苦的上班族,每月为微薄的薪水不得不忍受每天的挤公交生活--  或许, ...

  9. 22岁的我0基础转行软件测试月薪13k,分享一波我的自学方法和面试经验

    前言 我21年毕业于管理类专业,干了大半年行政打杂,工作平淡无快感.性格较内向,思维严谨独立.喜欢软件测试工作内容的系统性,技术性,丰富性.以上便是转行的最初心理,大家觉得可妥?说干就干去年6月底开始 ...

最新文章

  1. 王金锋:母婴菌群传递的7大关键词
  2. eclipse中格式化代码快捷键Ctrl+Shift+F失效的解决办法
  3. python装饰器函数-python函数装饰器
  4. @@ROWCOUNT 含义
  5. TensorFlow学习笔记之五(卷积神经网络)
  6. android 游戏的源程序代码类型,代码准备重写实现网络游戏 [开源]历时5天一款完整的文字策略养成类型游戏完成了...
  7. Create MSSQL Procedure
  8. 开设进口零食店的项目
  9. 计算机作业个人简历word,计算机毕业生个人简历模板word模板
  10. (休息几天)读曼昆之微观经济学——税收归宿
  11. 用c语言设计一个菜单界面_最新,最全的NX二次开发Ribbon界面菜单的设计图文教程...
  12. html涟漪动画效果,css3点击显示涟漪特效
  13. 2019 AI顶会时间表
  14. opencv——椭圆环截取图像(圆环截取类似)
  15. NMS(非极大值抑制)的来龙去脉,简单明了
  16. 鲁迅先生的《一件小事》
  17. 计算机考试工作表怎么做表格步骤,计算机考试Excel表格中换行的方法
  18. MySql怎么附加数据库
  19. VS2019 配色_SOAR NEWS两款全新配色 Kobe 5、Louis Vuitton x NBA 项链
  20. 独热编码-通过python代码讲解

热门文章

  1. 百趣代谢组学解读,从蛋白组学和代谢组学角度,浅析白番石榴成熟过程
  2. diary with u
  3. 魏永明: MiniGUI的涅槃重生之路
  4. FCC-----------Design a danmu app
  5. 新浪财经分析报告(0605)
  6. 可喜可贺,又一ThinkPHP 5.1开源多用户商城系统上架了商家客户端
  7. dynamic receptive filed adaptor
  8. Android RxJava操作符的学习---过滤操作符
  9. 前世五百次的回眸,才赢得今世的擦肩而过
  10. C#中读取.mat文件,然后实现寻峰算法