全部產品
Search
文件中心

Alibaba Cloud SDK:通過IDE使用阿里雲Node.js SDK

更新時間:Jul 01, 2024

本文以在Windows作業系統上,通過VS Code使用阿里雲SDK為例,協助您瞭解如何快速使用阿里雲Node.js SDK。

前提條件

使用 SDK

使用OpenAPI門戶提供的程式碼範例工程

說明

可能會出現 OpenAPI無法下載程式碼範例工程的情況,您可以查看在已有專案中使用SDK的介紹。

  1. 進入OpenAPI門戶的API調試頁面,選擇雲產品和介面。例如我們以調用Elastic Compute Service的DescribeRegions介面為例,可在搜尋欄中填入DescribeRegions,在搜尋結果中單擊API名稱進入API調試頁面。

    image

  2. 參數配置頁簽中填寫需要的參數資訊。填寫時請參考右側文檔頁簽,充分瞭解介面的說明和注意事項(尤其是費用相關資訊),以及各參數的具體含義和使用方法。

    如DescribeRegions介面支援傳入三個參數:

    參數名

    是否必填

    說明

    InstanceChargeType

    非必填

    不同的執行個體計費方式可能支援的地區不同。預設值為PrePaid。

    ResourceType

    非必填

    不同的資源類型可能支援的地區不同。預設值為instance。

    AcceptLanguage

    非必填

    設定返回結果的語言。預設值為zh-CN。

    image

  3. 在右側的SDK樣本頁面,選擇語言,單擊下載完整工程按鈕,下載SDK完整工程至本地並解壓。

    image

  4. 開啟VS Code,在功能表列單擊File->Open Folder,選擇解壓後的檔案夾。

  5. 在VS Code功能表列中單擊Terminal->New Terminal,將會在底部展示TERMINAL視窗。

    image

  6. 在Terminal中執行以下命令安裝TypeScript。

     npm install -g typescript
  7. 在Terminal中執行以下命令,會讀取專案中的 package.json 檔案,解析其中列出的所有依賴,並下載它們到專案的 node_modules 目錄中。

    npm install
  8. 在Terminal中執行以下命令,將TypeScript代碼根據 tsconfig.json 設定檔將 .ts (TypeScript)檔案編譯成 .js (JavaScript)檔案,JavaScript檔案通常會被放置在指定的輸出目錄(如 dist)中,以便後續的運行或部署。

    tsc
  9. 在Terminal中執行以下命令運行範例程式碼。

    node ./dist/client.js
  10. 查看運行結果。在Terminal中按下Ctrl+F,搜尋statusCode,如果看到"statusCode":200表示調用成功。

    image

在已有專案中使用SDK

  1. 開啟VS Code,在VS Code功能表列,單擊File->Open Folder,建立一個專案檔夾或者選擇一個已有的專案檔夾。例如檔案夾名稱為tssdkproject,然後選擇該檔案夾。

  2. 在VS Code功能表列中單擊Terminal->New Terminal,將會在底部展示Terminal視窗。

    image

  3. 擷取SDK。

    訪問SDK中心,選擇您想要使用的 SDK的雲產品,這裡以Elastic Compute Service為例。SDK版本選擇V2.0,語言選擇TypeScript

    image

  4. 安裝SDK。

    複製安裝命令到Terminal中,然後按下斷行符號執行。

    image

  5. 建立一個檔案。在專案名稱右邊,單擊New File...,填寫檔案名稱,例如ecsDescribeRegions.js。

    image

  6. 初始化用戶端。

    如您想調用ECS的API,必須先對ECS的用戶端做初始化。

    重要
    1. 初始化用戶端時需要使用AccessKey完成身分識別驗證,請提前擷取AccessKey。擷取方法請參見建立AccessKey

    2. 擷取RAM使用者的AccessKey之後,還需要在環境變數中設定AccessKey,具體操作步驟請參見在Linux、macOS和Windows系統配置環境變數

    3. endpoint如何設定請參見服務存取點

    // 引入ECS用戶端和OpenAPI用戶端
    const ecs20140526 = require('@alicloud/ecs20140526');
    const openapiclient = require('@alicloud/openapi-client');
    
    /**
     * 初始化ECS用戶端配置
     * 該配置將使用環境變數中的Access Key ID和Access Key Secret進行身分識別驗證,並設定endpoint為ecs.cn-hangzhou.aliyuncs.com
     */
    const ecsconfig = new openapiclient.Config();
    ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 從環境變數中擷取Access Key ID
    ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 從環境變數中擷取Access Key Secret
    ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // 設定ECS服務的endpoint
    
    // 建立ECS 20140526版本的用戶端執行個體
    const ecs20140526client = new ecs20140526.default(ecsconfig);
    
  7. 調用API。在調用OpenAPI之前,您需要先瞭解OpenAPI的詳細資料,請查看API文檔,以調用ECS的DescribeRegions為例。

    說明

    每個API都有獨立的請求對象,命名規則為${API名稱}${Request},例如DescribeRegionsRequest。

    // 引入ECS用戶端和OpenAPI用戶端
    const ecs20140526 = require('@alicloud/ecs20140526');
    const openapiclient = require('@alicloud/openapi-client');
    
    /**
     * 初始化ECS用戶端配置
     * 該配置將使用環境變數中的Access Key ID和Access Key Secret進行身分識別驗證,並設定服務端點為ecs.cn-hangzhou.aliyuncs.com
     */
    const ecsconfig = new openapiclient.Config();
    ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 使用環境變數中的Access Key ID
    ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 使用環境變數中的Access Key Secret
    ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // 設定ECS服務的endpoint
    
    // 建立ECS 20140526版本的用戶端執行個體
    const ecs20140526client = new ecs20140526.default(ecsconfig);
    const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest();
    // 發起查詢所有地區的請求
    ecs20140526client.describeRegions(describeRegionsRequest).then((res)=>{
        console.log(res);
    })
    
    
  8. 異常處理。

    Node.js V2.0 SDK主要分為兩種異常,一種是業務異常,主要以業務報錯為主的異常;還有一種是網路異常,一般是網路問題造成達到最大重試次數後拋出。由於兩種類型的異常暫時不支援外部模組匯入,所以樣本中不做區分。

    // 引入ECS用戶端和OpenAPI用戶端
    const ecs20140526 = require('@alicloud/ecs20140526');
    const openapiclient = require('@alicloud/openapi-client');
    
    /**
     * 初始化ECS用戶端配置
     * 該配置將使用環境變數中的Access Key ID和Access Key Secret進行身分識別驗證,並設定服務端點為ecs.cn-hangzhou.aliyuncs.com
     */
    const ecsconfig = new openapiclient.Config();
    ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 使用環境變數中的Access Key ID
    ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 使用環境變數中的Access Key Secret
    ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // 設定ECS服務的endpoint
    
    // 建立ECS 20140526版本的用戶端執行個體
    const ecs20140526client = new ecs20140526.default(ecsconfig);
    const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest();
    // 發起查詢所有地區的請求
    ecs20140526client.describeRegions(describeRegionsRequest).then((res) => {
        console.log(res);
    }).catch((err) => {
        console.log(err.message);
        throw err;
    });
    
  9. 運行範例程式碼。

    1. 如果您已安裝了Code Runner外掛程式,可以在檔案編輯地區的任意位置,按右鍵,選擇Run Code運行。

      image

    2. 在TERMINAL中使用node命令運行。如node .\ecsDescribeRegions.js

      image

    3. 選擇要執行的檔案,如ecsDescribeRegions.js,然後在左側邊欄單擊Run and Debug或者按下Ctrl+Shift+D,再單擊Run and Debug運行。

      image

  10. (可選)您也可以複製OpenAPI門戶提供的範例程式碼到檔案中運行,如何擷取範例程式碼請查看SDK代碼自動產生

相關文檔

進階文檔