全部產品
Search
文件中心

ApsaraDB for MongoDB:SDK整合樣本

更新時間:Oct 25, 2024

本文為您介紹如何通過SDK調用OpenAPI查詢指定地區的執行個體列表。

查看OpenAPI文檔

閱讀API概覽,選擇可以查詢指定地區執行個體列表的OpenAPI:DescribeDBInstances - 查詢MongoDB執行個體列表。根據介面文檔,瞭解調用該介面需要的參數及許可權。

建立RAM使用者並授權

身份

您可以使用阿里雲帳號(主帳號)、RAM使用者、RAM角色調用該介面,有關各種身份的差異請參見身份、憑據、授權。本案例中,我們使用RAM使用者進行介面調用。登入RAM存取控制,建立一個僅允許API調用的RAM使用者,記錄AK資訊,更多詳情請參見建立RAM使用者

授權

  1. 訪問RAM使用者列表,單擊目標RAM使用者操作列的添加許可權

  2. 權限原則區塊中輸入關鍵字MongoDB進行搜尋,選擇需要授權的策略。

    說明

    AliyunMongoDBFullAccess:管理雲資料庫服務(MongoDB)的許可權。

    AliyunMongoDBReadOnlyAccess:唯讀訪問雲資料庫服務(MongoDB)的許可權。

    如何建立自訂許可權,請參見授權資訊

  3. 單擊確定新增授權,完成授權操作。

憑據

在建立RAM使用者時會預設產生一個AccessKey,可直接使用。您也可進入到對應的RAM使用者詳情頁,在認證管理頁簽,單擊建立 AccessKey。具體操作,請參見建立AccessKey

調用OpenAPI

本文使用Java語言SDK

配置環境變數

通過在環境變數中設定AccessKey資訊避免在代碼中直接寫入程式碼AccessKey給業務帶來安全風險。

配置環境變數的方法,請參見在Linux、macOS和Windows系統配置環境變數

下載範例程式碼

  1. 訪問DescribeDBInstances

  2. 在左側的參數配置頁簽,填寫參數資訊。

    • RegionId: 地區ID,填寫表示查詢指定地區的執行個體列表。

  3. 在右側的SDK樣本頁簽,SDK版本選擇v2.0,語言選擇Java語言,單擊下載完整工程按鈕,下載範例程式碼包。

  4. 本地解壓並進入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
  }
}