本文在介紹準備AccessKey之後如何使用ECS SDK的基礎上,重點探討了其具體步驟,本文內容緊湊,希望大家可以有所收穫。
ECS SDK 使用範例
新版SDK 的檔案名稱通常以aliyun-XXXX-sdk 開頭,後面跟上產品名稱如ECS,組成如aliyun-java-sdk-ecs 的套件名。其中有一個核心套件 aliyun-java-sdk-core,其中封裝了所有產品的 SDK 都會用到的一些類,如 IClientProfile 類、 IAcsClient 類、異常類等。產品相關的類別均以產品為單位打包成不同名稱的 Jar 套件。
前提條件
您需要準備好您的 AccessKey,用於輸出到 建立 Profile 中。
Java SDK 使用方法範例
以ECS Java SDK 查詢可用鏡像資源的方法DescribeImages 為例,介紹SDK 所使用的完整流程,其中IClientProfile 和IAcsClient 兩個類別包含在aliyun-java-sdk-core 套件中,其他的類別都包含在aliyun-java-sdk-ecs 套件中。
建立 Profile。產生 IClientProfile 的物件 profile,該物件存放 AccessKeyID 和 AccessKeySecret 和預設的地域信息,如範例中的 cn-hangzhou,更多關於地域的信息,請參閱 地域與可用區。
IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", ak, aks); #ak 是您的 AccessKey,aks 是您的 AccessKeySecret
建立 Client。從 IClientProfile 類別再產生 IAcsClient 的物件 client,後續取得 response 都需要從 IClientProfile 中取得。
IAcsClient client = new DefaultAcsClient(profile);
建立 Request。建立對應方法的Request,類別的命名規則一般為API 的方法名稱加上“Request”,如獲得鏡像清單的API 方法名為DescribeImages,那麼對應的請求類別名稱就是DescribeImagesRequest,直接使用建構函式產生一個預設的類describe。
DescribeImagesRequest describe = new DescribeImagesRequest();
設定 Request 的參數。請求類別產生好之後需要透過Request 類別的setXxx 方法設定必要的信息,即API 參數中必須要提供的信息,DescribeImages 的API 方法必須要提供的參數為RegionId,該值可以省略,因為IClientProfile 中已經提供了地理訊息,同樣的也可以透過setXxx 方法設定其他可選的參數,如這裡設定要查詢的鏡像為自訂鏡像,則設定ImageOwnerAlias 的值為self,表示查詢您的自訂鏡像。
describe.setImageOwnerAlias("self");
參數設定完畢後,透過 IAcsClient 物件獲得對應 Request 的回應。
DescribeImagesResponse response = client.getAcsResponse(describe);
在 Response 中獲得傳回的參數值。接著可以呼叫 response 中對應的 getXxx 方法獲得傳回的參數值了,如取得某個鏡像的名字。根據API 方法的不同,返回的資訊中可能會包含多層的信息,如獲得鏡像列表這個方法,返回的信息中鏡像是以一個集合來表示的,集合中存放了每個鏡像的信息,對於Java SDK 而言,那麼存放鏡像資訊的就是一個列表,需要先透過getImages() 獲得Image 物件的集合,然後再透過遍歷等方法取得其中某個鏡像的信息,之後調用getXxx 方法獲得具體的資訊。
for(Image image:response.getImages()) { System.out.println(image.getImageId()); System.out.println(image.getImageName()); }
至此,一個完整的呼叫就完成了。
PHP SDK 注意事項
使用 PHP SDK 和 Java SDK 的類似,可以歸納為:
建立 Profile。
建立 Client。
建立 Request。
設定 Request的參數。
使用 Client 對應的方法傳入 Request,取得 Response。
在 Response 中獲得傳回的參數值。
Python SDK 注意事項
使用 Python SDK 省略了建立 Profile 這一步,直接建立 Client,然後執行後面的步驟即可。
以上是準備AccessKey之後如何使用ECS SDK的詳細內容。更多資訊請關注PHP中文網其他相關文章!