什麼是 Dev Proxy?

Dev Proxy 是一種 API 模擬器,能輕鬆地協助您測試應用程式,甚至超出理想情境的範圍。

您可以測試您的應用程式,以確定它如預期般運作。 但是,如果您使用的 API 失敗,該怎麼辦? 您的應用程式是否會遺失客戶的數據? 您要如何測試這個? 模擬 API 失敗很難。 您最終撰寫的程式代碼不會出貨或更糟:完全不進行測試。 這就是為什麼我們建置了開發 Proxy,以模擬 API 錯誤,讓您輕鬆地測試應用程式,而不需要變更程式代碼。

使用開發代理,您可以:

Dev Proxy 是一個可在任何平台上運作的命令列工具。 因為它會攔截網路要求,所以它適用於任何類型的應用程式和技術堆疊。 Dev Proxy 是開放原始碼且免費供使用的。

Dev Proxy 是給誰用的?

Dev Proxy 幫助開發者:

  • 建立能呼叫 API 的應用程式——測試你的應用程式如何處理來自 GitHub、OpenAI 和 Anthropic 等 API 的錯誤與速率限制,且不更改程式碼
  • 使用 Microsoft Graph 建置應用程式 - 獲取權限與最佳實務指引
  • 設計 API - 實作前的原型與模擬 API
  • 自動化測試 ——將混沌測試整合進 CI/CD 流程

何時使用 Dev Proxy

需要時使用 Dev Proxy:

  • 測試 API 韌性而不修改應用程式程式碼
  • 支援任何技術棧(瀏覽器、Node.js、.NET、Python 等)。
  • 模擬你無法控制的 API 故障
  • 獲取 Microsoft Graph 最佳實務的指導
  • 自動化 CI/CD 流程中的混亂測試

考慮其他方法時:

  • 你只需要瀏覽器中的模擬工具來做前端單元測試
  • 你正在建置 API,需要合約測試
  • 你需要程式化修改請求/回應主體(Dev Proxy 可以做到,但專用工具可能更簡單)。

快速情境開始

根據你想達成的目標來選擇你的道路:

你想做什麼? Time Guide
測試本應用程式的 API 錯誤處理 5 分鐘 含隨機錯誤的測試
測試我的應用程式如何處理 GitHub API 的速率限制 15 分鐘 測試 GitHub API 速率限制
測試我的應用程式能處理 OpenAI 的速率限制 10 分鐘 測試 OpenAI 速率限制
模擬一個尚未存在的 API 10 分鐘 模擬 CRUD API
請檢查我的 Microsoft Graph 權限 10 分鐘 偵測最低限度的權限
了解我的應用程式呼叫哪些 API。 5 分鐘 發現值得關注的網址
自動化 CI/CD 中的 API 測試 15 分鐘 在 CI/CD 中使用 Dev Proxy

修正 API 問題

從 API 收到錯誤,還是在建置 AI 應用程式或代理時遇到錯誤? 從問題開始:

試試看使用預設集

預設集是針對特定 API 現成的開發代理設定。 想看看你的應用程式如何處理它所呼叫的 API 的速率限制和錯誤,可以先安裝 Dev Proxy。

winget install DevProxy.DevProxy --silent

安裝完成後,開啟新的命令提示字元,使其識別更新後的 PATH 環境變數。

brew tap dotnet/dev-proxy
brew install dev-proxy
bash -c "$(curl -sL https://aka.ms/devproxy/setup.sh)"

接著,下載你的 API 預設集。

API Command
GitHub devproxy config get github-rate-limiting
OpenAI devproxy config get openai-throttling
Anthropic devproxy config get anthropic-throttling
Microsoft Graph devproxy config get microsoft-graph-rate-limiting

用預設啟動 Dev Proxy。 替換 github-rate-limiting 成你下載的預設。 第一次啟動 Dev Proxy 時,你需要 信任它的憑證。

devproxy --config-file "~dataFolder/configs/github-rate-limiting/.devproxy/devproxyrc.json"

照常執行你的應用程式。 它一直呼叫真實的 API URL,而 Dev Proxy 則模擬 API 的速率限制和錯誤。

如需其他 API 的預設集,請參考 Dev Proxy 範例圖庫。

您的應用程式如何處理 API 錯誤?

另請參閱