快速入门
本章节以CreateSnapshot为例,为您演示如何通过阿里云CLI、OpenAPI Explorer和阿里云SDK等开发者工具调用ECS API。
背景信息
调用API时,您可以根据API文档了解使用说明,并查询必选的请求参数。发送请求后报错时,您可以在相应API文档中获取错误码说明。
调用方式
- 阿里云CLI示例:适用于常使用命令行工具的场景。要求您已提前安装了阿里云CLI,安装方式请参见 《CLI文档》 简介。
- OpenAPI Explorer示例:适用于习惯交互式操作界面的场景,或者初次使用阿里云产品的开发者用户。您可以在OpenAPI Explorer中调试和获取SDK请求示例。更多有关OpenAPI Explorer的详情,请参见什么是OpenAPI Explorer。
- Java SDK示例:适用于SDK编码或DevOps等场景。要求您已提前安装了ECS Java SDK,安装方式请参见安装Java SDK。
阿里云CLI示例
OpenAPI Explorer示例
Java SDK示例
示例代码中的下列参数需要您根据实际情况自行填写。
- <AccessKey>:您的AccessKeyId。获取方式请参见创建AccessKey。
- <AccessSecret>:您的AccessKeySecret。
- <RegionId>:ECS实例所在的地域ID。取值请参见地域与可用区或DescribeRegions。
- <DiskId>:云盘ID。取值请参见DescribeDisks。
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.ecs.model.v20140526.CreateSnapshotRequest;
import com.aliyuncs.ecs.model.v20140526.CreateSnapshotResponse;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
/* pom.xml
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>3.0.9</version>
</dependency>
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-ecs</artifactId>
<version>4.10.1</version>
</dependency>
*/
public class CreateSnapshotExample {
private String accessKeyId = "<AccessKey>";
private String accessSecret = "<AccessSecret>";
/**
* 云盘所在的地域ID
*/
private String regionId = "<RegionId>";
/**
* 要创建快照的云盘ID
*/
private String diskId = "<DiskId>";
public void createSnapshot() {
DefaultProfile profile = DefaultProfile.getProfile(regionId, accessKeyId, accessSecret);
IAcsClient client = new DefaultAcsClient(profile);
CreateSnapshotRequest request = new CreateSnapshotRequest();
request.setRegionId(regionId);
request.setDiskId(diskId);
try {
CreateSnapshotResponse response = client.getAcsResponse(request);
logInfo(response.getSnapshotId());
} catch (ServerException e) {
logInfo(String.format("Fail. Something with your connection with Aliyun go incorrect. ErrorCode: %s",
e.getErrCode()));
} catch (ClientException e) {
logInfo(String.format("Fail. Business error. ErrorCode: %s, RequestId: %s",
e.getErrCode(), e.getRequestId()));
}
}
private static void logInfo(String message) {
System.out.println(message);
}
public static void main(String[] args) {
new CreateSnapshotExample().createSnapshot();
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论