Thunder Client の使い方:環境と環境変数の設定方法
このガイドでは、APIの開発とテストにおける環境変数の活用方法について詳しく解説します。Thunder Clientは、Visual Studio Code(VS Code)用の軽量なREST APIクライアント拡張機能で、環境と変数の管理に優れています。本記事を通じて、Thunder Clientを使用して効果的に環境と環境変数を設定し、複数の環境での作業を簡素化する方法を学びましょう。さらに、有用な代替ツールとして、EchoAPIもご紹介します。このツールを使えば、API開発の効率と管理が大幅に向上します。では、具体的な設定手順に進みましょう。
API の開発とテストにおいて、環境変数を活用することでプロセスを大幅に簡素化し、作業の効率と整理を向上させることができます。Thunder Client は、Visual Studio Code (VS Code) 用の軽量 REST API クライアント拡張機能で、環境と変数の管理に優れています。このガイドでは、Thunder Client で環境と環境変数を設定する方法を紹介します。複数のタイプの環境の使用方法や管理方法についてもカバーします。最後に、有用な代替ツールとして EchoAPI をご紹介します。
Thunder Clientの環境と変数を理解する
API 開発では、開発、ステージング、本番などの異なる環境の設定を追跡するのが難しいことがあります。Thunder Client は、環境変数を定義して管理することでこれを簡単にします。Thunder Client がサポートする環境と変数のタイプを以下に示します:
- OS環境変数
- オペレーティングシステムの環境変数を
{{variable}}
形式で直接 Thunder Client 内で参照できます。これらの変数はグローバル変数として機能し、すべての API リクエストでアクセス可能です。
- オペレーティングシステムの環境変数を
- グローバル環境
- この環境では、すべてのコレクションでアクセス可能な変数を保存できます。これらの変数は
tc_env_global.json
ファイルに保存され、プロジェクト全体で必要な値を簡単に管理できます。
- この環境では、すべてのコレクションでアクセス可能な変数を保存できます。これらの変数は
- ローカル環境
- ローカル環境を使用して、シークレットや一時トークンをコンピュータにローカルに保存できます。これは、git プロジェクトからシークレットを除外したい場合に特に便利です。ローカル環境変数はグローバルタイプであり、すべてのコレクションで使用可能です。
- .env ファイル
- Thunder Client は .env ファイルの使用をサポートしており、シンプルなキーと値の形式で環境変数を管理できます。.env ファイルを使用するには、Thunder Client で環境を作成し、それを .env ファイルにリンクします。これにより、リクエストで変数を使用できるようになります。
- アクティブ環境
- 環境をアクティブにするには、オプションメニューから選択して「アクティブに設定」を選びます。これにより、選択した環境の変数がすべてのリクエストで使用可能になります。
- コレクションに環境を添付
- コレクション設定ビューから特定の環境をコレクションに添付できます。これは、複数のコレクションを異なる環境にリンクする場合に便利です。頻繁に環境を変更する場合、このオプションは推奨されません。
- コレクションとリクエストの変数
- これらの変数は特定のコレクションやリクエストに限定され、設定の Pre Run タブから定義します。これらの変数は、リクエストの実行中のみ使用可能です。
環境変数の設定
Thunder Client で環境変数を使用すると、API リクエストの再利用性と管理が向上します。以下に設定手順を示します:
- 環境の作成
- VS Code で Thunder Client を開き、アクションバーの Thunder Client アイコンをクリックします。
- 環境セクションで 新しい環境 ボタンをクリックし、環境に名前を付け、キーと値の形式で変数を追加します。
- .env ファイルのリンク
- .env ファイルをリンクするには:
- 「新しい環境」ボタンを使用して環境を作成します。
- 環境を開き、.env ファイルにリンクするオプションを選びます。
- .env ファイルを選択して保存します。これにより、そのファイルで定義された変数が使用可能になります。
- .env ファイルをリンクするには:
- リクエスト内での変数の設定
- リクエスト URL、ヘッダー、本文、テストで
{{variableName}}
形式を使用して環境変数を参照できます。これにより、リクエストが実行されるときに変数がそれぞれの値に自動的に置き換えられます。
- リクエスト URL、ヘッダー、本文、テストで
- 環境のアクティブ化
- 環境メニューから目的の環境を選び、「アクティブに設定」オプションを選んで環境をアクティブ化します。これにより、その環境の変数がすべてのリクエストで利用できるようになります。
- コレクションとリクエスト変数の使用
特定のコレクションやリクエストに変数を設定する場合、設定に移動し、Pre Run タブを開き、スクリプティングタブを使用して変数を設定します:
tc.setVar("name", "Thunder Client", "request");
tc.setVar("baseUrl", "http://localhost:8744", "request");
高度な機能
- 暗号化された環境
- Enterprise Plan で利用可能なこの機能を使用すると、環境変数を暗号化形式で保存できます。これは、特に機密情報の追加セキュリティに役立ちます。
- シークレットマネージャーとの統合
- Thunder Client は Azure Key Vault や AWS Secrets Manager などのシークレットマネージャーと統合できます。環境変数として
TC_AZURE_VAULT_URL
(Azure)やTC_AWS_SECRET_NAME
とTC_AWS_REGION
(AWS)を設定することで、Thunder Client はこれらのマネージャーからシークレットを取得して使用できます。
- Thunder Client は Azure Key Vault や AWS Secrets Manager などのシークレットマネージャーと統合できます。環境変数として
- .env ファイルのインポート
- Postman などのツールからの構成を持っている場合、Thunder Client に .env ファイルをインポートできます。これにより、既存のプロジェクトを移行したり、外部設定を統合したりする際に便利です。
推奨:VS Code 用の EchoAPI
Thunder Client は優れたツールですが、EchoAPI for VS Code もチェックしてみてください。EchoAPI は API 開発のための超軽量ツールで、スクラッチパッドをサポートします。以下の利点があります:
- ログイン不要:アカウントを作成せずにすべての機能を利用できます。
- スクラッチパッド対応:一時的なリクエストを素早く保存してテストできます。
- 超軽量:最小限のリソース使用でシステムの高速パフォーマンスを維持します。
- Postman スクリプト構文に完全対応:既存の Postman スクリプトを EchoAPI でそのまま利用可能です。
EchoAPI は IntelliJ IDEA、VS Code、Chrome リクエストキャプチャ拡張機能とシームレスに統合され、API 開発とテストのための万能ツールです。