共用方式為


設定開發代理伺服器

開發人員 Proxy 是一種命令行工具,可協助您模擬雲端 API 的行為和錯誤,以協助您建置復原的應用程式。

在本教程中,您將學習如何安裝和執行 Dev Proxy。

安裝開發者 Proxy

安裝 Dev Proxy 最簡單的方式是使用 winget。 或者,您可以手動安裝Dev Proxy。

若要使用 winget 安裝 Dev Proxy,請執行下列命令:

winget install Microsoft.DevProxy --silent

重要

開發 Proxy 安裝程式會將新的項目新增至 PATH。 若要在安裝之後使用 Dev Proxy,您必須重新啟動命令提示字元以重新整理 PATH 環境變數。

注意

若要嘗試最新的預覽功能,請安裝開發 Proxy 的 Beta 版本。

若要使用 winget 安裝 Dev Proxy,請執行下列命令:

winget install Microsoft.DevProxy.Beta --silent

若要執行開發 Proxy 的 Beta 版本,請使用 devproxy-beta

安裝Dev Proxy最簡單的方式是使用Homebrew。 或者,您可以手動安裝Dev Proxy。

若要使用 Homebrew 安裝 Dev Proxy,請執行下列命令:

brew tap dotnet/dev-proxy
brew install dev-proxy

注意

若要嘗試最新的預覽功能,請安裝開發 Proxy 的 Beta 版本。

若要使用 Homebrew 安裝 Dev Proxy,請執行下列命令:

brew tap dotnet/dev-proxy
brew install dev-proxy-beta

若要執行開發 Proxy 的 Beta 版本,請使用 devproxy-beta

安裝 Dev Proxy 最簡單的方式是使用安裝腳本。 或者,您可以手動安裝Dev Proxy。

若要使用安裝文稿安裝 Dev Proxy,請執行下列命令:

bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"

如果您使用 PowerShell,請執行下列命令:

(Invoke-WebRequest https://aka.ms/devproxy/setup.ps1).Content | Invoke-Expression

注意

若要嘗試最新的預覽功能,請安裝開發 Proxy 的 Beta 版本。

若要使用安裝文稿安裝 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

若要執行開發 Proxy 的 Beta 版本,請使用 devproxy-beta

第一次啟動開發代理

第一次在計算機上啟動 Dev Proxy 時,有一些步驟需要遵循,以確保開發 Proxy 可以攔截來自您機器的要求並成功回應。 您不需要在第一次執行之後重複這些步驟。

  1. 啟動開發代理伺服器。 開啟命令提示字元會話。 輸入 devproxy,然後按 Enter
  2. 信任憑證。 開發階段的 Proxy 會安裝名為 Dev Proxy CA的憑證。 顯示警告。 選取 [Yes 以確認您要安裝憑證。 開發 Proxy 會使用此憑證來解密從您的電腦傳送的 HTTPS 流量。
  3. 允許防火牆存取。 Windows 防火牆會封鎖 Proxy。 顯示警告。 選取 [Allow access] 按鈕以允許流量通過防火牆。
  1. 啟動開發代理。 開啟命令提示字元會話。 輸入 devproxy,然後按 Enter
  2. 信任憑證。 開發人員 Proxy 會安裝名為 Dev Proxy CA的憑證,其用來解密從您的電腦傳送的 HTTPS 流量。 顯示警告。 按 來確認您是否要信任憑證。
  3. 接受的傳入連線。 顯示警告。 選取 Allow 以確認。
  1. 啟動開發代理伺服器。 開啟命令提示字元會話。 輸入 devproxy,然後按 Enter

  2. 信任憑證。 開發 Proxy 會使用自定義 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

根據預設,Dev Proxy 會設定為:

  • 攔截對任何 JSON 佔位元 API 端點提出的要求
  • 模擬 API 錯誤回應和 API 節流,失敗率為 50%

確認開發代理伺服器運作正常

開發代理會攔截您電腦上應用程式對您向開發代理註冊的 URL 發出的請求。 當開發 Proxy 偵測到要求時,它會將它傳遞至 API(不採取任何動作),或傳回回應。 讓我們來確認開發代理運作如預期。

在 PowerShell 中,使用 Invoke-WebRequest Cmdlet 將 GET 要求傳送至 JSON 佔位元 API。

Invoke-WebRequest -Uri https://jsonplaceholder.typicode.com/posts

如果您使用 curl,請使用下列命令將 GET 要求傳送至 JSON 佔位元 API。

curl -ikx http://localhost:8000 https://jsonplaceholder.typicode.com/posts

您也可以使用 API 用戶端,例如 Postman,將 GET 要求傳送至 https://jsonplaceholder.typicode.com/posts

在執行 Dev Proxy 的命令行中,您會看到有關請求的資訊,以及 Dev Proxy 所執行的動作。 根據預設,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

如果 Dev Proxy 傳回錯誤回應,您會在輸出中看到錯誤訊息。

 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 可能不會攔截請求。 如需協助,請參閱 常見問題 一節。

安全地停止開發 Proxy

當您不再需要執行 Dev Proxy 時,應該一律安全地停止它。

  • 按 Ctrl Ctrl + C,安全地停止開發環境代理。

如果您關閉命令提示字元視窗,Dev Proxy 不會正確地取消註冊為系統代理,而且可能會遇到一些 常見問題

下一步

瞭解如何設定開發人員 Proxy 以符合您的需求。 開發者 Proxy 具有高度的彈性,並支援多種不同的情境。 深入瞭解如何將它設定至您的特定案例。