阿里云新版SDK的具体代码编写步骤与使用方法说明
发布日期:2015-11-11 15:11:56
阿里云新版SDK的具体代码编写步骤与使用方法说明 新版SDK的文件名一般是以aliyun-java-sdk开头,后面跟上产品名称如ECS,组成如aliyun-java-sdk-ecs的包名,其中有一个核心包aliyun-java-sdk-core,其中封装了所有产品的SDK都会用到的一些类,如IClientProfile类、IAcsClient类、异常类等,产品相关的类均以产品为单位打包成不同名称的jar包。 下面以ECS Java SDK获得镜像的方法DescribeImages为例,说明一下SDK使用的完整流程,其中IAcsClient与IClientProfile两个类包含在aliyun-java-sdk-core包中,其他的类均包含在aliyun-java-sdk-ecs包中: 1、 生成IClientProfile的对象profile,该对象存放Access Key ID和Access Key Secret与默认的地域信息: IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", ak, aks); 2、 从IClientProfile类中再生成IAcsClient的对象client,后面获得的response都需要从IClientProfile中获得 IAcsClient client = new DefaultAcsClient(profile); 3、 创建一个对应方法的Request,类的命名规则一般为API的方法名加上“Request”,比如说获得镜像列表的API方法名为DescribeImages,则对应的请求类名即为DescribeImagesRequest,直接使用构造函数生成一个默认的类describe: DescribeImagesRequest describe = new DescribeImagesRequest(); 4、 请求类生成好之后需要通过Request类的setXxx方法设置一些必要的信息,即API参数中必须要提供的信息,RegionId为DescribeImages的API方法必须要提供的参数,该值可以省略,因为IClientProfile中已经提供了地域信息,同样也可以通过setXxx方法设置其他可选的参数,例如这里设置要查询的镜像为自定义镜像,则设置ImageOwnerAlias的值为“self”(self即表示查询自定义镜像),即: describe.setImageOwnerAlias("self"); 5、 参数设置完毕后就通过IAcsClient对象来获得相应Request的响应: DescribeImagesResponse response = client.getAcsResponse(describe); 6、 然后调用response中对应的getXxx方法获得返回的参数值,如获得某个镜像的名字。根据API方法的不同,返回的信息中可能会包含许多层的信息,如获得镜像列表这个方法,返回的信息中镜像是以一个集合来表示的,集合中存放了每个镜像的惊喜,对于java sdk来说,存放镜像信息的就是一个列表,其需要先通过getImages()来获得Image对象的集合,然后通过遍历等方法取得其中某个镜像的信息,然后通过调用getXxx的方法来获得具体的信息: for(Image image:response.getImages()) { System.out.println(image.getImageId()); System.out.println(image.getImageName()); } 7、 到这,完成了一个完整的调用就完成。 PS. PHP的SDK和Java的类似,可以归纳为:1、创建profile2、创建client3、创建Request4、设置Request的参数5、用client对应的方法传入request,获得response6、在response中获得返回的参数值 Python的SDK省略了profile创建这一步骤,它直接创建client,然后执行后面的步骤就行了。 下一条: 可用区与独立云磁盘FAQ
|