赞
踩
这个不同于Token1.0使用
在此之前我一直找不到这个软件,在网上搜免费的东西别人还要收费,最后在OneNET官方技术支持找到了,我这里就免费把连接放出来,顺便给你们那个官方的网址
服务与技术支持
Token2.0计算
生成的Token就是微信小程序里面要用的了
例如 const authInfo = "version=2022-05-01&res=userid%2F341108&et=1733816371&method=sha1&sign=%2BVN%2BgKOork6IMDt4ZfaSrag%3D";
官方说明在
只要弄懂了这一个调用方法,其他的也都会了,所有调用几乎都是这样
这个是获取最新物模型数据,记得更改为你自己的信息
fetchDeviceStatus() { // 这里应替换为用户的实际鉴权信息 const authInfo = "version=2022-05-01&res=userid%2F341108&et=1733816371&methodign=%2BVNoDSm%2BgKOork6IMDt4ZfaSrag%3D"; wx.request({ url: 'https://iot-api.heclouds.com/device/status-history?product\_id=05Dy8U26rg&device\_name=test&start\_time=1701090060000&end\_time=1703511540000&limit=1', method: "GET", header: { 'Authorization': authInfo }, success: (res) => { // 更新设备状态信息数据 this.setData({ deviceStatus: res.data }); }, fail: (err) => { console.log("设备状态信息请求失败"); console.error(err); // 处理请求失败的情况 } }); }
这段 JavaScript 代码是微信小程序中的一个函数,它用于向OneNET平台发送HTTP GET请求来获取已连接设备的状态历史信息。下面分部分进行详细解释:
fetchDeviceStatus 函数:
fetchDeviceStatus
。鉴权信息(authInfo):
authInfo
是一个字符串,包含通过 HTTP 请求头发送给 OneNET 的鉴权信息。wx.request:
wx.request
是微信小程序提供的网络请求API,用于发起网络请求。请求配置:
url
指明了向哪个地址发送请求。这里是 OneNET 的API端点,用于获取设备状态历史信息。method
设置请求的 HTTP 方法,这里为 “GET”。header
包含发送到服务器的头部信息,这里主要传递 Authorization
来认证请求。发送请求并处理响应:
success
和 fail
是请求成功或失败时执行的回调函数。success
回调中,通过 this.setData
更新小程序页面的 deviceStatus
数据,即将服务器返回的数据设置到页面数据上,从而可以在页面上展示这些信息。fail
回调将执行,通常这里会打印错误信息到控制台,可以在这里处理错误,比如更新UI提示用户请求失败。请求参数:
product_id
, device_name
, start_time
, end_time
, limit
)用于指定想要查询的设备状态信息。product_id
和 device_name
分别指定产品ID和设备名。start_time
和 end_time
定义了查询状态的时间范围。limit
表示返回结果的数量限制,这里设置为1
表示只获取最新的一个状态数据。请注意,实际使用时需要确保所有参数都是正确的,尤其是鉴权信息,它需要替换为有效的凭据才能让API请求成功。如果请求失败,要检查网络状态、URL地址、API端点参数和鉴权信息是否正确。
这里是类同与下发指令的代码 记得更改为你自己的信息
setOnenetData(ledValue) { // 以下数据和URL应根据实际情况进行修改 const authInfo = "version=2022-05-01&res=userid%2F341108&et=1733816371ha1&sign=%2BVNoDSm%2BgKOork6IMDt4ZfaSrag%3D"; // 替换为用户的实际鉴权信息 wx.request({ url: 'https://iot-api.heclouds.com/thingmodel/set-device-property', method: 'POST', header: { 'Authorization': authInfo, }, data: { "product\_id": "05Dy8U26rg", "device\_name": "test", "params": { "LED": ledValue // 使用传入的ledValue设置LED的状态 } } }); }
这段代码是微信小程序中的一个方法,名为setOnenetData
,它用于发送HTTP POST请求到OneNET平台,以设置特定设备的属性值。下面是对该方法的详细解释:
setOnenetData 方法:
ledValue
,这个参数代表需要设置给设备LED属性的值。鉴权信息(authInfo):
authInfo
是一个字符串,包含了API鉴权信息,一般包括API版本、资源标识、过期时间、加密方法和签名。Authorization
传递鉴权信息进行身份验证,保证请求安全性。wx.request 方法:
wx.request
是微信小程序用来发起网络请求的API。请求配置:
url
指明了向哪个地址发送请求,这里是OneNET的API端点,用于设置设备属性。method
表明这是一个POST请求,用于向服务器提交数据。header
设置HTTP头部信息,在这种情况下是包含Authorization
的鉴权信息。发送数据:
data
对象中包含具体要发送的数据。product_id
和 device_name
指定了哪个产品下的哪个设备需要设置属性。params
是一个对象,其中的“LED”键对应设备的属性名,“LED”键的值就是传入setOnenetData
方法的ledValue
参数,它表示用来设置设备的LED属性的值。发送请求:
wx.request
发出请求,但在这段代码里,没有定义回调函数来处理响应。success
和fail
回调函数,用于处理请求成功时返回的数据或请求失败时的错误信息。注意事项:
authInfo
,还需确保product_id
和device_name
与你要控制的设备相匹配。这个setOnenetData
方法允许微信小程序与OneNET平台进行交互,实现对物联网设备的远程控制。
https://pan.baidu.com/s/15iw7kzn4GMUKP3g8809PUA?pwd=jq91
在这个教程的旅程中,我们一起跨越了从硬件的细节世界到云端的数据流,最终触达了用户手中的微信小程序界面,实现了一个物联网系统的全栈开发。感谢您的陪伴和努力,希望通过这些章节的学习,您能获得宝贵的实战经验和深刻的理解。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!
资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。