设备本地日志上传

设备可将本地的日志上传到物联网平台,之后您就可以在平台上方便地查看设备记录的日志,

注意: 使用设备文件上传接口前,请先后台应用管理-api应用,创建api应用, 记录下appId 和appSecret,以方便后面计算签名。

设备上传本地日志

设备上传本地日志,目前仅提供了http上传方式

请求address示例: http://xxx/api/senthink/aep/open/nodes/v1/localLog/upload

注意:请求头的Content-Type为multipart/form-data

请求头:

请求头 是否必须 说明 示例
appId 应用id 60db2cecf2a6f7261142be20
sign 计算的签名值(参考示例) 60db2cecf2a6f7261142be20
nonce 随机字符串(可以使用时间戳) 1624977281203

请求体参数见下表:

参数名称 参数类型 是否必须 示例 备注
level Text 1 紧急程度 0 低 1 中等 2 紧急
productId Text 2EE9CD74 产品id
openId Text B5869C8F open id
simpleTime Text 1610615712188 采集时间,毫秒级时间戳
file File 文件 文件,暂时不限制文件格式
nodeEui Text 122223 设备号

签名计算示例

step1: 将请求参数拼接成字符串(文件除外) 得到 str = "level:1,productId:2EE9CD74,openId:B5869C8F,simpleTime:1610615712188,nodeEui:122223"

step2: 字符串拼装之后计算md5 sign = MD5( appId(应用的appId) + appSecret(应用的appSecret) + str(第一步计算出的字符串) + nonce(随机数)) 经过以上2步,我们得到计算的sign值。 只需要在请求Header上添加上,请求即可。

注意: 同一个sign 一小时之内只能请求一次,所以每次请求之前,需要修改随机数nonce计算出新的sign值。

示例:

上面参数列表中得到的字符串 (appId+appSecret+str+nonce) 得

"60db2cecf2a6f7261142be2059212651ED98576401B92B09BDDB5DE2level:1,productId:2EE9CD74,openId:B5869C8F,simpleTime:1610615712188,nodeEui:1222231624977281203"

md5 之后得到 sign = "60db2cecf2a6f7261142be20"

通过Postman模拟设备日志的上传

打开Postman,填充请求地址和请求体,请注意标红的部分

请求体 设备本地日志上传 请求头 设备本地日志上传

点击Send发送请求,成功的话会显示以下结果,且可在云平台查看设备本地日志

上报日志响应

平台查看设备本地日志

上报日志响应

详见日志服务-设备本地日志

results matching ""

    No results matching ""