本節包含開發 Proxy 外掛程式和組態選項的技術參考。
我應該使用哪個外掛來報告和分析?
請參考以下表格,選擇符合你想進一步了解應用程式 API 流量需求的外掛。 產生報告的外掛需要報告器,例如 JsonReporter、 MarkdownReporter 或 PlainTextReporter,才能將報告儲存為檔案。 產生器插件會直接寫入輸出檔案。 Dev Proxy 會在你停止錄影後,在目前的工作目錄中建立輸出檔案。
| Goal | 插件 + 回報器 | 輸出檔案 |
|---|---|---|
| 盤點我的應用程式所呼叫的 URL | UrlDiscoveryPlugin + JsonReporter | UrlDiscoveryPlugin_JsonReporter.json |
| 計數請求及其結果 | ExecutionSummaryPlugin + MarkdownReporter 或 JsonReporter |
ExecutionSummaryPlugin_MarkdownReporter.md 或 ExecutionSummaryPlugin_JsonReporter.json |
| 擷取完整請求與回應 | HarGenerator插件 | devproxy-yyyyMMddHHmmss.har |
| 建立可重播的要求 | HttpFileGeneratorPlugin | requests_yyyyMMddHHmmss.http |
| 從流量建立 API 規格 | OpenApiSpecGeneratorPlugin 或 TypeSpecGeneratorPlugin |
host-port-yyyyMMddHHmmss.json (或 .yaml)每個 API 主機,或 name-yyyyMMddHHmmss.tsp 每個 API 主機 |
| 從流量建立模擬物件 | MockGeneratorPlugin | mocks-yyyyMMddHHmmss.json |
| 找出我的應用程式所需的最低權限 | MinimalPermissionsPlugin + MarkdownReporter 或 JsonReporter |
MinimalPermissionsPlugin_MarkdownReporter.md 或 MinimalPermissionsPlugin_JsonReporter.json |
Note
如果已有同名的報告檔案存在,報表產生器會在檔名後加上時間戳,例如 UrlDiscoveryPlugin_JsonReporter_yyyyMMddHHmmss.json。 對於 Microsoft Graph API,請使用 GraphMinimalPermissionsPlugin 來查找最小權限。
外掛程式
使用任何 API 的外掛程式清單。
| 名稱 | 描述 |
|---|---|
| AuthPlugin | 使用 API 金鑰或 OAuth2 模擬驗證和授權。 |
| DevToolsPlugin | 公開開發代理訊息,以及 Chrome DevTools 中攔截的請求與回應的相關資訊。 支援 HTTP 與 STDIO。 |
| CachingGuidancePlugin | 顯示 Dev Proxy 在指定時間內攔截相同要求時所顯示的警告。 |
| CrudApiPlugin | 使用記憶體內部數據存放區模擬 CRUD API。 |
| ExecutionSummaryPlugin | 產生經由代理伺服器的請求摘要報告。 |
| GenericRandomErrorPlugin | 使請求失敗,從包含模擬錯誤的檔案中隨機選取錯誤。 |
| HarGenerator插件 | 從截獲的請求和響應生成 HTTP 封存 (HAR) 檔案。 |
| HttpFileGeneratorPlugin | 從攔截的要求和回應產生 HTTP 檔案。 |
| LanguageModelFailure外掛程式 | 模擬各種語言模型故障場景,以測試語言模型依賴應用程序的彈性。 |
| LanguageModelRateLimiting外掛程式 | 藉由在可設定的時間範圍內追蹤提示和完成權杖耗用量,模擬語言模型 API 的權杖型速率限制。 |
| LatencyPlugin | 會在設定的範圍中隨機選擇毫秒數延遲回應。 支援 HTTP 與 STDIO。 |
| MinimalCsomPermissionsPlugin | 偵測呼叫記錄的 SharePoint Client-Side 物件模型 (CSOM) API 要求所需的最小許可權。 |
| MinimalPermissionsPlugin | 回傳呼叫已記錄的 API 請求所需的最小權限。 使用來自指定本機資料夾的 API 資訊。 |
| MinimalPermissionsGuidancePlugin | 比較傳送至 API 之 JWT 令牌中所使用的許可權,與記錄 Proxy 的要求所需的最低必要範圍,並顯示差異。 |
| MockGeneratorPlugin | 根據攔截的請求產生開發代理模擬。 |
| MockRequestPlugin | 可讓您使用 Dev 代理伺服器發送網路請求。 |
| MockResponsePlugin | 模擬回應。 |
| MockStdioResponsePlugin | 模擬基於 STDIO 的應用程式,例如 MCP 伺服器的回應。 |
| ODataPagingGuidancePlugin | 當 Proxy 使用先前未在其中一個攔截的響應中傳回的 URL 攔截 OData 分頁要求時,顯示警告。 |
| OpenAIMockResponsePlugin | 使用本機語言模型模擬來自 Azure OpenAI 和 OpenAI 的回應。 |
| OpenAITelemetryPlugin | 產生 OpenAI 相容 API 要求的遙測數據。 |
| OpenAIUsageDebugging外掛程式 | 將 OpenAI API 使用指標記錄到 CSV 文件中,以進行調試和分析。 |
| OpenApiSpecGeneratorPlugin | 從攔截的要求和回應產生OpenAPI規格。 |
| RateLimitingPlugin | 模擬速率限制行為。 |
| RetryAfterPlugin | 模擬 API 在對請求進行節流後所傳送的Retry-After標頭。 |
| 重寫外掛程式 | 重寫要求。 |
| TypeSpecGenerator外掛程式 | 從攔截的要求和回應產生 TypeSpec 檔案。 |
| UrlDiscoveryPlugin | 建立 Proxy 已攔截的 URL 清單。 |
Azure API 中心外掛程式
使用 Azure API 中心的外掛程式清單。
| 名稱 | 描述 |
|---|---|
| ApiCenterMinimalPermissionsPlugin | 檢查應用程式是否使用最少的許可權來呼叫 API。 使用來自指定 Azure API 中心實例的 API 資訊。 |
| ApiCenterOnboardingPlugin | 檢查應用程式中所使用的 API 是否已在指定的 Azure API 中心實例中註冊。 |
| ApiCenterProductionVersionPlugin | 檢查應用程式中所使用的 API 是否為在指定的 Azure API 中心實例中註冊之 API 的生產版本。 |
Microsoft Entra 外掛程式
使用 Microsoft Entra API 的外掛程式清單。
| 名稱 | 描述 |
|---|---|
| EntraMockResponsePlugin | 模擬 Microsoft Entra 的回應結果。 |
Microsoft Graph 外掛程式
使用 Microsoft 圖形 API 的外掛程式清單。
| 名稱 | 描述 |
|---|---|
| GraphBetaSupportGuidancePlugin | 當 Proxy 偵測到Microsoft Graph Beta 端點的要求時,會顯示警告。 |
| GraphClientRequestIdGuidancePlugin | 當向 Microsoft 圖形 API 發出請求時,如果不包含 client-request-id 標頭,則顯示提示。 |
| GraphConnectorGuidancePlugin | 顯示使用 Microsoft Graph 連接器的內容指引。 |
| GraphMinimalPermissionsPlugin | 傳回 proxy 所記錄的 Microsoft Graph 要求所需的最低限度的許可權清單。 |
| GraphMinimalPermissionsGuidancePlugin | 將傳送至 Microsoft Graph 的 JWT 令牌中所使用的許可權,與代理請求所需的最低範圍進行比對,並顯示差異。 |
| GraphMockResponsePlugin | 微软图形 API 的回應模擬。 |
| GraphRandomErrorPlugin | 對 Microsoft Graph 的請求因隨機錯誤而失敗。 |
| GraphSdkGuidancePlugin | 當代理攔截尚未由 Microsoft Graph SDK 發出的 Microsoft Graph 要求時顯示提示。 |
| GraphSelectGuidancePlugin | 當 Proxy 攔截對 Microsoft Graph API 的請求且請求中未包含 $select 查詢字串參數時,會顯示警告。 |
| ODSPSearchGuidancePlugin | 當開發 Proxy 偵測到 OneDrive 和 SharePoint 搜尋 API 的要求時,會顯示警告。 |
記者
產生不同格式報表的記者清單。
| 名稱 | 描述 |
|---|---|
| JsonReporter | 以 JSON 格式產生報表。 |
| MarkdownReporter | 以 Markdown 格式產生報表。 |
| PlainTextReporter | 以純文字格式產生報表。 |
組態
開發 Proxy 組態選項的參考。
| 名稱 | 描述 |
|---|---|
| devproxyrc | 用於開發代理伺服器的設定檔。 |
| 代理API | 以程式設計方式與 Dev Proxy 互動的 API。 |
| Proxy 設定 | 代理伺服器設定選項。 |