本文為您介紹如何通過SDK調用OpenAPI查詢指定地區的執行個體列表。
查看OpenAPI文檔
閱讀API概覽,選擇可以查詢指定地區執行個體列表的OpenAPI:DescribeDBInstances - 查詢MongoDB執行個體列表。根據介面文檔,瞭解調用該介面需要的參數及許可權。
建立RAM使用者並授權
身份
您可以使用阿里雲帳號(主帳號)、RAM使用者、RAM角色調用該介面,有關各種身份的差異請參見身份、憑據、授權。本案例中,我們使用RAM使用者進行介面調用。登入RAM存取控制,建立一個僅允許API調用的RAM使用者,記錄AK資訊,更多詳情請參見建立RAM使用者。
授權
憑據
在建立RAM使用者時會預設產生一個AccessKey,可直接使用。您也可進入到對應的RAM使用者詳情頁,在認證管理頁簽,單擊建立 AccessKey。具體操作,請參見建立AccessKey。
調用OpenAPI
本文使用Java語言SDK。
配置環境變數
通過在環境變數中設定AccessKey資訊避免在代碼中直接寫入程式碼AccessKey給業務帶來安全風險。
配置環境變數的方法,請參見在Linux、macOS和Windows系統配置環境變數。
下載範例程式碼
在左側的參數配置頁簽,填寫參數資訊。
RegionId: 地區ID,填寫表示查詢指定地區的執行個體列表。
在右側的SDK樣本頁簽,SDK版本選擇v2.0,語言選擇Java語言,單擊下載完整工程按鈕,下載範例程式碼包。
本地解壓並進入alibabacloud_sample目錄。
開啟並運行專案
使用IntelliJ IDEA附加元件目,待相關依賴載入完畢後,開啟 src/main/java/com/aliyun/sample/Sample.java。根據代碼中的注釋提示自行添加列印傳回值的代碼。
單擊IDE右上方的運行按鈕,可查看輸出日誌。本案例中的返回內容如下:
{
"headers": {
"access-control-allow-origin": "*",
"date": "Wed, 26 Jul 2023 05:45:58 GMT",
"keep-alive": "timeout=25",
"transfer-encoding": "chunked",
"vary": "Accept-Encoding",
"x-acs-request-id": "CF00C412-4BB5-5D02-803C-46D0AF71DC23",
"connection": "keep-alive",
"content-type": "application/json;charset=utf-8",
"access-control-expose-headers": "*",
"x-acs-trace-id": "48df4a01d258338ee5327a6a48628426"
},
"statusCode": 200,
"body": {
"DBInstances": {
"DBInstance": [
{
"capacityUnit": "",
"chargeType": "PostPaid",
"creationTime": "2023-07-25T06:32:25Z",
"DBInstanceClass": "mdb.shard.2x.xlarge.d",
"DBInstanceId": "dds-***",
"DBInstanceStatus": "Running",
"DBInstanceStorage": 500,
"DBInstanceType": "replicate",
"engine": "MongoDB",
"engineVersion": "5.0",
"expireTime": "2999-09-08T16:00Z",
"kindCode": "18",
"lockMode": "Unlock",
"mongosList": { "mongosAttribute": [] },
"networkType": "VPC",
"regionId": "cn-shanghai",
"replicationFactor": "3",
"resourceGroupId": "rg-***",
"shardList": { "shardAttribute": [] },
"storageType": "cloud_essd1",
"tags": { "tag": [] },
"zoneId": "cn-shanghai-m"
}
]
},
"pageNumber": 1,
"pageSize": 30,
"requestId": "CF00C412-4BB5-5D02-803C-***",
"totalCount": 3
}
}