Windows 上の Visual Studio Code (VS Code) で、Alibaba Cloud SDK for Node.js を使用します。
前提条件
-
Node.js がインストールされていること。 詳細については、「Windows への Node.js のインストール」をご参照ください。
-
VS Code がインストールされていること。 詳細については、「Windows での Node.js 開発環境のセットアップ」をご参照ください。
SDK の使用
OpenAPI Portal のサンプルプロジェクトの使用
OpenAPI Portal でサンプルプロジェクトのダウンロードに失敗した場合は、「既存のプロジェクトでの SDK の使用」をお試しください。
-
API デバッグページの OpenAPI Portal に移動します。 クラウド製品と API を選択します。 この例では、ECS の DescribeRegions API を使用します。 検索バーに「DescribeRegions」と入力し、API 名をクリックします。

-
[パラメータ設定] タブで、必要なパラメータを入力します。 右側の [ドキュメント] タブには、API の説明、注意事項、課金情報、およびパラメータの詳細が記載されています。
DescribeRegions API は、3 つのパラメーターをサポートしています。
パラメーター名
必須
説明
InstanceChargeType
任意
サポートされるリージョンは、課金方法によって異なります。 デフォルト:PrePaid。
ResourceType
任意
サポートされるリージョンは、リソースタイプによって異なります。 デフォルト:instance。
AcceptLanguage
任意
返される結果の言語。 デフォルト:zh-CN。

-
[SDK サンプル] タブで、言語を選択し、[プロジェクトのダウンロード] をクリックします。 ダウンロードしたプロジェクトを解凍します。

-
VS Code を開きます。 メニューバーで、[File] > [Open Folder] の順にクリックします。 解凍されたフォルダーを選択します。
-
VS Code のメニューバーで、[Terminal] > [New Terminal] の順にクリックします。

-
ターミナルで、次のコマンドを実行して TypeScript をインストールします。
npm install -g typescript -
ターミナルで、次のコマンドを実行してプロジェクトの依存関係をインストールします。
npm install -
ターミナルで、次のコマンドを実行して TypeScript ファイルを JavaScript にコンパイルします。 出力ファイルは
distディレクトリに配置されます。tsc -
ターミナルで、次のコマンドを実行してサンプルコードを実行します。
node ./dist/client.js -
結果を検証します。 ターミナルで
Ctrl+Fを押し、statusCodeを検索します。"statusCode": 200の応答は成功を示します。
既存のプロジェクトでの SDK の使用
-
VS Code を開きます。 [File] > [Open Folder] の順にクリックし、
tssdkprojectなどのプロジェクトフォルダーを作成または選択します。 -
VS Code のメニューバーで、[Terminal] > [New Terminal] の順にクリックします。

-
SDK を取得します。
SDK センターに移動し、ECS などのクラウド製品を選択して、[SDK バージョン] を [V2.0] に、言語を [TypeScript] に設定します。

-
SDK をインストールします。
インストールコマンドをターミナルにコピーし、Enter キーを押して実行します。

-
ファイルを作成します。 プロジェクト名の横にある [New File] アイコンをクリックし、
ecsDescribeRegions.jsなどのファイル名を入力します。
クライアントを初期化します。
ECS API を呼び出す前に、ECS クライアントを初期化します。
重要クライアントの初期化にはアクセスキーペアが必要です。AccessKey を作成
アクセスキーペアを取得したら、環境変数として設定します。Linux、macOS、Windows システムで環境変数を設定
エンドポイント設定:Endpoints
// ECS クライアントと OpenAPI クライアントをインポートします。 const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * ECS クライアント設定を初期化します。 * この設定では、環境変数からアクセスキー ID とアクセスキーシークレットを使用して認証を行い、エンドポイントを ecs.cn-hangzhou.aliyuncs.com に設定します。 */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 環境変数からアクセスキー ID を取得します。 ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 環境変数からアクセスキーシークレットを取得します。 ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // ECS サービスのエンドポイントを設定します。 // ECS API バージョン 20140526 のクライアントインスタンスを作成します。 const ecs20140526client = new ecs20140526.default(ecsconfig);API を呼び出します。対象となる API については、API ドキュメントをご確認ください。次の例では、ECS の
DescribeRegionsAPI を呼び出します。説明各 API には、
${APIName}${Request}という命名規則に従った個別のリクエストオブジェクトがあります (例:DescribeRegionsRequest)。// ECS クライアントと OpenAPI クライアントをインポートします。 const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * ECS クライアント設定を初期化します。 * この設定では、環境変数からアクセスキー ID とアクセスキーシークレットを使用して認証を行い、エンドポイントを ecs.cn-hangzhou.aliyuncs.com に設定します。 */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 環境変数からアクセスキー ID を取得します。 ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 環境変数からアクセスキーシークレットを取得します。 ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // ECS サービスのエンドポイントを設定します。 // ECS API バージョン 20140526 のクライアントインスタンスを作成します。 const ecs20140526client = new ecs20140526.default(ecsconfig); const describeRegionsRequest = new ecs20140526.DescribeRegionsRequest(); // すべてのリージョンを照会するリクエストを開始します。 ecs20140526client.describeRegions(describeRegionsRequest).then((res)=>{ console.log(res); })例外を処理します。
Node.js V2.0 SDK は、業務上の例外 (サービスエラー) とネットワーク例外 (最大リトライ回数を超えた後にスローされる) の 2 種類の例外をスローします。 例外クラスは外部モジュールからインポートできないため、サンプルコードではこれらを区別しません。
// ECS クライアントと OpenAPI クライアントをインポートします。 const ecs20140526 = require('@alicloud/ecs20140526'); const openapiclient = require('@alicloud/openapi-client'); /** * ECS クライアント設定を初期化します。 * この設定では、環境変数からアクセスキー ID とアクセスキーシークレットを使用して認証を行い、エンドポイントを ecs.cn-hangzhou.aliyuncs.com に設定します。 */ const ecsconfig = new openapiclient.Config(); ecsconfig.accessKeyId = process.env.ALIBABA_CLOUD_ACCESS_KEY_ID; // 環境変数からアクセスキー ID を取得します。 ecsconfig.accessKeySecret = process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET; // 環境変数からアクセスキーシークレットを取得します。 ecsconfig.endpoint = 'ecs.cn-hangzhou.aliyuncs.com'; // ECS サービスのエンドポイントを設定します。 // ECS API バージョン 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; });サンプルコードを実行します。
-
Code Runner がインストールされている場合は、エディターで右クリックし、[Run Code] を選択します。

-
nodeコマンドでファイルを実行します。例:node .\ecsDescribeRegions.js
-
サイドバーの [実行とデバッグ] をクリックするか
Ctrl+Shift+Dを押してから、[実行とデバッグ] をクリックしてアクティブなファイルを実行します。
-
-
(オプション) OpenAPI Portal からサンプルコードをファイルにコピーして実行します。 詳細については、「SDK コードの自動生成」をご参照ください。