文件上传
概述
华为物联网平台支持设备将运行日志,配置信息等文件上传至平台,便于用户进行日志分析、故障定位、设备数据备份等。当设备采用HTTPS方式将文件上传到OBS服务进行备份时,您可以在OBS服务管理已上传的设备文件。
业务流程
1. 授权物联网平台访问OBS服务。
2. 配置OBS桶。
3~4. 设备请求上传文件URL,平台下发文件上传URL,格式请参考设备上报获取文件上传URL请求接口文档。
- 方法一:直接使用该URL,以Postman为例。
使用PUT方法调用URL,body选择binary,选择具体的文件上传,文件名与上报的文件名一样,这样在OBS才可以看到对应的文件。
调用接口的header可以不带Content-Type或者Host。如果必须要带,请检查Content-Type是否为text/plain,以及Host是否为URL的域名,否则调用接口将返回403状态码SignatureDoesNotMatch错误。
- 方法二:集成OBS的SDK调用接口。
参考使用URL进行授权访问,使用put请求上传对象SDK来上传对象。
6~7. 设备请求下载存储在OBS服务的文件,平台下发文件下载URL,格式请参考平台下发文件上传临时URL接口文档。
- 方法一:使用GET方法调用URL。调用接口的header可以不带Content-Type或者Host。如果必须要带,请检查Content-Type是否为text/plain,以及Host是否为URL的域名,否则调用接口将返回403状态码SignatureDoesNotMatch错误。
- 方法二:集成OBS的SDK调用接口,使用GET请求下载对象SDK来下载文件对象。
配置文件上传功能
- 访问设备接入服务,单击“管理控制台”进入设备接入控制台。选择您的实例,单击实例卡片进入。
- 在左侧导航栏,选择 ,单击“文件上传”页签。
- 单击“服务授权”,在新弹出的页面中单击“同意授权”。
图2 文件上传-授权
注:如用户仅授权过设备接入服务访问对象存储服务的权限,可在控制台选择
,单击“文件上传”页签,然后单击“KMS服务授权”按钮。授权设备接入服务访问密钥管理服务的权限。 - (可选)若没有桶,请先在OBS服务控制台创建桶,已有OBS桶的话,请跳过此步骤。
- 单击“OBS存储配置”,选择正确桶后,该实例下的所有设备文件将上传到配置的OBS桶,您也可以单击“修改配置”更改桶。
图3 文件上传-存储配置
调用OBS接口上传设备文件时,每次只能上传一个文件,且文件大小不能超过5GB。
- 如果需要使用自定义域名, 请打开开关“使用自定义域名”,选择OBS桶配置的自定义域名,并选择使用访问方式HTTPS/HTTP,单击“确定”完成配置。
图4 文件上传-存储配置自定义域名
使用自定义域名后,平台下发给设备上传或下载的临时URL域名为自定义域名。设备可以通过该URL上传或下载OBS文件。