開発プロキシを設定する
開発プロキシは、回復性のあるアプリの構築に役立つクラウド API の動作とエラーをシミュレートするのに役立つコマンド ライン ツールです。
このチュートリアルでは、Dev Proxy をインストールして実行する方法について説明します。
開発プロキシをインストールする
開発プロキシをインストールする最も簡単な方法は、winget を使用することです。 または、開発プロキシを手動でインストールすることもできます。
winget を使用して開発プロキシをインストールするには、次のコマンドを実行します。
winget install Microsoft.DevProxy --silent
重要
開発プロキシ インストーラーは、PATH に新しいエントリを追加します。 インストール後に開発プロキシを使用するには、コマンド プロンプトを再起動して PATH 環境変数を更新する必要があります。
開発プロキシをインストールする最も簡単な方法は、Homebrew を使用することです。 または、開発プロキシを手動でインストールすることもできます。
Homebrew を使用して開発プロキシをインストールするには、次のコマンドを実行します。
brew tap dotnet/dev-proxy
brew install dev-proxy
開発プロキシをインストールする最も簡単な方法は、セットアップ スクリプトを使用することです。 または、開発プロキシを手動でインストールすることもできます。
セットアップ スクリプトを使用して開発プロキシをインストールするには、次のコマンドを実行します。
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"
PowerShell を使用する場合は、次のコマンドを実行します。
(Invoke-WebRequest https://aka.ms/devproxy/setup.ps1).Content | Invoke-Expression
手記
最新のプレビュー機能を試すには、Dev Proxy のベータ 版をインストールします。
セットアップ スクリプトを使用して開発プロキシをインストールするには、次のコマンドを実行します。
bash -c "$(curl -sL https://aka.ms/devproxy/setup-beta.sh)"
PowerShell を使用する場合は、次のコマンドを実行します。
(Invoke-WebRequest https://aka.ms/devproxy/setup-beta.ps1).Content | Invoke-Expression
開発プロキシのベータ 版を実行するには、devproxy-beta
開発プロキシを初めて起動する
マシンで開発プロキシを初めて起動するときは、いくつかの手順に従って、Dev Proxy がコンピューターからの要求をインターセプトして正常に応答できることを確認します。 最初の実行後にこれらの手順を繰り返す必要はありません。
- 開発プロキシを開始します。 コマンド プロンプト セッションを開きます。 「
devproxy
」と入力し、Enter 押します。 - 信頼証明書。 開発プロキシは、
Dev Proxy CA
という名前の証明書をインストールします。 警告が表示されます。Yes
選択して、証明書をインストールすることを確認します。 開発プロキシでは、この証明書を使用して、コンピューターから送信された HTTPS トラフィックの暗号化を解除します。 - ファイアウォールアクセスを許可します。 Windows ファイアウォールによってプロキシがブロックされます。 警告が表示されます。 [
Allow access
] ボタンを選択して、ファイアウォール経由のトラフィックを許可します。
- 開発プロキシを開始します。 コマンド プロンプト セッションを開きます。 「
devproxy
」と入力し、Enter 押します。 - 信頼証明書。 開発プロキシは、
Dev Proxy CA
という名前の証明書をインストールします。この証明書は、コンピューターから送信された HTTPS トラフィックの暗号化を解除するために使用されます。 警告が表示されます。 y を押して、証明書を信頼することを確認します。 - 受信接続を受け入れます。 警告が表示されます。
Allow
を選択して確定します。
開発プロキシを開始します。 コマンド プロンプト セッションを開きます。 「
devproxy
」と入力し、Enter 押します。信頼証明書。 開発プロキシでは、カスタム SSL 証明書を使用して、コンピューターから送信された HTTPS トラフィックの暗号化を解除します。
重要
次の手順は Ubuntu 用です。 その他の Linux ディストリビューションでは、手順が異なる場合があります。
証明書をインストールして信頼するには、新しいコマンド プロンプトで次のコマンドを実行します。
# Export Dev Proxy root certificate openssl pkcs12 -in ~/.config/dev-proxy/rootCert.pfx -clcerts -nokeys -out dev-proxy-ca.crt -passin pass:"" # Install the certificate sudo cp dev-proxy-ca.crt /usr/local/share/ca-certificates/ # Update certificates sudo update-ca-certificates
コマンド プロンプトに次の出力が表示されます。
info 8 error responses loaded from devproxy-errors.json
info Dev Proxy API listening on http://localhost:8897...
info Dev Proxy Listening on 127.0.0.1:8000...
Hotkeys: issue (w)eb request, (r)ecord, (s)top recording, (c)lear screen
Press CTRL+C to stop Dev Proxy
既定では、開発プロキシは次の構成が行われます。
- 任意の JSON プレースホルダー API エンドポイントに送信された要求をインターセプトする
- 失敗する確率を 50% に設定して API エラー応答と API 調整をシミュレートする
開発プロキシが正しく動作していることを確認する
開発プロキシは、コンピューター上のアプリケーションが Dev Proxy に登録した URL に対して行う要求をインターセプトします。 Dev Proxy は、要求を検出すると、それを API に渡すか (アクションを実行しない)、応答を返します。 開発プロキシが期待どおりに動作していることを確認しましょう。
PowerShell で、Invoke-WebRequest
コマンドレットを使用して、JSON プレースホルダー API に GET 要求を送信します。
Invoke-WebRequest -Uri https://jsonplaceholder.typicode.com/posts
curl
を使用する場合は、次のコマンドを使用して JSON プレースホルダー API に GET 要求を送信します。
curl -ikx http://localhost:8000 https://jsonplaceholder.typicode.com/posts
また、Postman などの API クライアントを使用して、https://jsonplaceholder.typicode.com/posts
に GET 要求を送信することもできます。
開発プロキシが実行されているコマンド ラインには、要求に関する情報と、開発プロキシが実行したアクションが表示されます。 既定では、Dev Proxy は 50% の確率でエラー応答をシミュレートします。 要求がエラーを返さない場合は、Dev Proxy がその要求を通します。
req ╭ GET https://jsonplaceholder.typicode.com/posts
time │ 1/31/2025 12:12:14 PM +00:00
skip │ RetryAfterPlugin: Request not throttled
skip │ GenericRandomErrorPlugin: Pass through
api ╰ Passed through
開発プロキシからエラー応答が返された場合は、出力にエラー メッセージが表示されます。
req ╭ GET https://jsonplaceholder.typicode.com/posts
time │ 1/31/2025 12:12:37 PM +00:00
skip │ RetryAfterPlugin: Request not throttled
oops ╰ 403 Forbidden
重要
コマンド プロンプトに出力が表示されない場合は、Dev Proxy が要求をインターセプトしていない可能性があります。 ヘルプについては、一般的な問題 セクションを参照してください。
開発プロキシを安全に停止する
Dev Proxy を実行する必要がなくなった場合は、常に安全に停止する必要があります。
- Ctrl + C押して、開発プロキシを安全に停止します。
コマンド プロンプト セッションをシャットダウンすると、開発プロキシがシステム プロキシとして正しく登録解除されないため、一般的な問題が発生する可能性があります。
次の手順
ニーズに合わせて開発プロキシを構成する方法について説明します。 開発プロキシは柔軟性が高く、さまざまなシナリオをサポートしています。 特定のシナリオに合わせて構成する方法の詳細について説明します。
Dev Proxy