コンテキスト変数の値を保存および取得する - AWS Cloud Development Kit (AWS CDK) v2

これは AWS CDK v2 デベロッパーガイドです。古い v1 CDK は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コンテキスト変数の値を保存および取得する

cdk.json ファイルの または AWS Cloud Development Kit (AWS CDK) CLIを使用してコンテキスト変数を指定できます。次に、 TryGetContextメソッドを使用して値を取得します。

コンテキスト変数を指定する

コンテキスト変数は、 AWS CDK CLI コマンドの一部として、または で指定できますcdk.json

コマンドラインコンテキスト変数を作成するには、次の例に示すように、--context (-c) オプションを使用します。

cdk synth -c bucket_name=mygroovybucket

cdk.json ファイルに同じコンテキスト変数と値を指定するには、次のコードを使用します。

{ "context": { "bucket_name": "myotherbucket" } }

ファイルと cdk.json ファイルの両方を使用してコンテキスト変数を指定すると AWS CDK CLI、値が AWS CDK CLI優先されます。

コンテキスト変数の値を取得する

アプリでコンテキスト変数の値を取得するには、コンストラクトのコンテキストで TryGetContextメソッドを使用します。(つまり、 または Python thisselfでは、 はいくつかのコンストラクトのインスタンスです)。

この例では、 bucket_nameコンテキスト変数の値を取得します。リクエストされた値が定義されていない場合、 は例外を発生させるのではなく undefined (NonePython では 、Java null および C# では 、Go nilでは ) TryGetContextを返します。

TypeScript
const bucket_name = this.node.tryGetContext('bucket_name');
JavaScript
const bucket_name = this.node.tryGetContext('bucket_name');
Python
bucket_name = self.node.try_get_context("bucket_name")
Java
String bucketName = (String)this.getNode().tryGetContext("bucket_name");
C#
var bucketName = this.Node.TryGetContext("bucket_name");

コンストラクトのコンテキスト外では、次のようにアプリオブジェクトからコンテキスト変数にアクセスできます。

TypeScript
const app = new cdk.App(); const bucket_name = app.node.tryGetContext('bucket_name')
JavaScript
const app = new cdk.App(); const bucket_name = app.node.tryGetContext('bucket_name');
Python
app = cdk.App() bucket_name = app.node.try_get_context("bucket_name")
Java
App app = App(); String bucketName = (String)app.getNode().tryGetContext("bucket_name");
C#
app = App(); var bucketName = app.Node.TryGetContext("bucket_name");

コンテキスト変数の使用の詳細については、「」を参照してくださいコンテキスト値と AWS CDK