插件下载了解更多
Alibaba Cloud Developer ToolkitbetaAlibaba Cloud OpenAPI
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
Alibaba Cloud Developer ToolkitbetaAlibaba Cloud OpenAPI
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.
接口说明
设备列表文件要求
-
设备列表文件包含设备 DeviceName,以换行分隔,每行一个 DeviceName。支持 CSV 格式,文件大小不能超过 5 MB。
-
单个设备列表文件最多可包含升级包对应产品下的 10,000 个设备,否则使用该文件创建静态升级批次时将报错。
使用说明
该接口与其他接口结合使用完成设备列表文件上传。上传设备列表文件的步骤:
-
调用本接口生成设备列表文件上传到对象存储(OSS)的信息。 本接口的返回参数包含: 调用 OSS PostObject 上传设备列表文件的请求参数:Key、AccessKeyId、Signature 和 Policy。
-
请在本接口返回结果后的 1 分钟之内,使用OSS SDK调用 PostObject 接口上传设备列表文件。上传文件的代码示例,请参见下文返回参数的用途章节。
说明 本接口返回的参数信息有效期为 1 分钟,请在 1 分钟内上传设备列表文件。 -
设备列表上传完成后,请在 60 分钟内,调用物联网平台 API CreateOTAStaticUpgradeJob 创建静态升级批次。 如果上传了设备列表,但未调用 CreateOTAStaticUpgradeJob 创建静态升级批次,上传的文件将被系统定期自动清理。
QPS 限制
单个阿里云账号调用该接口的每秒请求数(QPS)最大限制为 10。
说明
RAM 用户共享阿里云账号配额。
流控信息
当前云产品API请求速率暂未透出。
请求参数
字段名称 | 字段详情 |
---|---|
IotInstanceIdstring | 实例 ID。您可在物联网平台控制台的实例概览页面,查看当前实例的 ID。展开详情 示例值:iot-cn-0pp1n8t**** |
请求说明
调用 API 时,除了本文介绍的该 API 的特有请求参数,还需传入公共请求参数。公共请求参数说明,请参见公共参数文档。
返回参数
返回说明
返回参数的用途
调用 OSS PostObject 接口时,使用本接口的返回参数值作为请求参数值,将您编辑好的文件上传到对象存储(OSS)。
以下是向对象存储 OSS 上传文件的 Java 代码示例:
- 在 pom.xml 中添加以下依赖:
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.3</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpmime</artifactId>
<version>4.5.10</version>
</dependency>
- 上传文件的代码如下:
String host,
String policy,
String ossAccessKeyId,
String signature,
String data) throws IOException {
CloseableHttpClient httpClient = HttpClients.createDefault();
HttpPost uploadFile = new HttpPost(host);
MultipartEntityBuilder builder = MultipartEntityBuilder.create();
builder.addTextBody("key", key, ContentType.TEXT_PLAIN);
builder.addTextBody("policy", policy, ContentType.TEXT_PLAIN);
builder.addTextBody("ossAccessKeyId", ossAccessKeyId, ContentType.TEXT_PLAIN);
builder.addTextBody("signature", signature, ContentType.TEXT_PLAIN);
builder.addTextBody("success_action_status", "200", ContentType.TEXT_PLAIN);
builder.addBinaryBody("file", data.getBytes());
HttpEntity multipart = builder.build();
uploadFile.setEntity(multipart);
CloseableHttpResponse response = httpClient.execute(uploadFile);
if (response.getStatusLine().getStatusCode() == 200) {
return true;
}
return false;
}
返回示例
变更历史
暂无变更历史