V2.1 Get File¶
获取文件的信息。
如果你在使用 API 批量更新相关文件后调用当前 API,建议两次调用间隔 2 秒左右,以免获取到未更新数据。
该 API 支持在 EnOS 2.3.0 CU3 及以上环境中使用。
操作权限¶
使用此 API 前,确保服务账号已被授予包含下列服务和操作权限的策略。有关授权服务账号的更多信息,参见 管理服务账号。
需授权的服务 |
所需操作权限 |
---|---|
资产 |
Read |
请求格式¶
GET https://{integration-address}/connect-service/v2.1/files?action=getFileInfo
备注
{integration-address}:消息集成服务网关地址。该信息可登录 EnOS 管理控制台,在 帮助 > 环境信息 > HTTP 消息集成通道 中获取。
请求参数(URI)¶
备注
必须在请求参数中使用以下任意一个参数或参数组合以指定资产:
assetId
以指定一个设备或一个逻辑资产productKey
+deviceKey
以指定一个设备
名称 |
位置(Path/Query) |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|---|
orgId |
Query |
必需 |
String |
资产所属的组织 ID。如何获取 orgId 信息>> |
fileUri |
Query |
必需 |
String |
文件下载 URI,格式:enos-connect://xxxx。 |
category |
Query |
必需 |
String |
需要下载的文件类别。模型功能相关的文件,如属性、测点、事件,值为 |
assetId |
Query |
可选(见上述注解) |
String |
资产 ID。如何获取 assetId 信息>> |
productKey |
Query |
可选(见上述注解) |
String |
设备的 product key,需与 |
deviceKey |
Query |
可选(见上述注解) |
String |
设备的 device key,需与 |
请求参数(Header)¶
名称 |
必需/可选 |
数据类型 |
描述 |
---|---|---|---|
apim-accesstoken |
必需 |
String |
通过 token 认证获取的 access token。获取方法,参见 获取 Access Token。 |
响应参数¶
名称 |
数据类型 |
描述 |
---|---|---|
data |
FileMetaDto 结构体 |
文件元数据信息。其结构参见 FileMetaDto 结构体。 |
FileMetaDto 结构体 ¶
名称 |
数据类型 |
描述 |
---|---|---|
orgId |
String |
资产所属的组织 ID。 |
category |
String |
需要下载的文件类别。 |
fileUri |
String |
文件下载 URI。 |
originalFilename |
String |
文件名称。 |
fileSize |
Integer |
文件大小。 |
md5 |
String |
文件 MD5。 |
signMethod |
String |
文件签名算法。 |
sign |
String |
文件签名。 |
createTime |
Long |
文件创建时间 |
示例¶
请求示例¶
https://{integration-address}/connect-service/v2.1/files?action=getFileInfo&orgId=yourOrgId&fileUri=yourFileUri&category=feature&assetId=yourAssetId
method: GET
requestHeader: {
"apim-accesstoken":"yourAccessToken"
}
返回示例¶
{
"code": 0,
"msg": "OK",
"requestId": "6a02a5a5-49f0-4df1-b364-496ad2079033",
"data": {
"orgId": "yourOrgId",
"category": "feature",
"fileUri": "yourFileUri",
"originalFilename": "file.txt",
"fileSize": 123,
"md5": "md5value",
"signMethod": "md5",
"sign": "fileSig",
"createTime": 1648694084000
}
}
SDK 示例¶
你可以在 Github 上获取接入服务的 SDK 示例: