閱讀英文

共用方式為


外掛程式架構

外掛程式是向 Dev Proxy 註冊的 .NET 類別,引進特定的開發 Proxy 行為。 外掛程式可以提供 API 使用方式、模擬 API 行為、分析多個 API 要求,或產生報表的即時指引。 開發 Proxy 有三種類型的外掛程式:

您可以在 devproxyrc.json 檔案中註冊外掛程式,。 檔案包含要載入的外掛程式清單及其組態。

開發人員 Proxy 隨附 外掛程式集合,您可以 建立自定義外掛程式,以擴充開發 Proxy 功能以符合您的需求。

當開發 Proxy 啟動時,它會載入其組態檔中啟用的外掛程式。 視您啟用的外掛程式而定,開發 Proxy 可以提供指引、模擬 API 行為,或分析 API 要求。 下列各節說明不同類型的外掛程式如何運作。

攔截外掛程式

當 Dev Proxy 攔截符合 urlsToWatch 數位列中其中一個 URL 的要求時,它會依組態檔中所列的順序叫用每個攔截外掛程式。 每個攔截外掛程式都會繼承自 BaseProxyPlugin 類別,而且可以訂閱下列事件:

  • BeforeRequest - 開發 Proxy 攔截要求時引發
  • BeforeResponse - 在 Dev Proxy 收到來自伺服器的回應之後引發
  • AfterResponse - 在開發人員 Proxy 傳送回應給客戶端之後引發

針對每個事件,外掛程式可以定義事件處理程式。 在處理程式中,外掛程式可以分析要求和回應,並視需要加以修改。 它也可以輸出指引訊息。 若要查看可能的內容,請參閱開發 Proxy 提供的外掛程式程式代碼。

報告外掛程式

開發 Proxy 可讓您記錄 API 要求和回應。 您通常會使用錄製來報告 API 使用量,或分析多個 API 要求。 報告外掛程式繼承自 BaseReportingPlugin 類別,並使用 AfterRecordingStop 事件註冊事件處理程式。

當您停止錄製時,Dev Proxy 會引發 AfterRecordingStop 事件,並將記錄的要求清單和回應作為已註冊事件處理程式的自變數傳遞。 報表外掛程式接著可以分析記錄的數據併產生報表物件。 報表對像是報表外掛程式所定義的任意物件。 報表外掛程式會藉由呼叫 StoreReport 方法來儲存報表。

重要

報表外掛程式會產生報表物件,而 Dev Proxy 會將它儲存在記憶體中。 若要將這些報表物件轉換成用戶可讀取的報表,您必須在 Dev Proxy 配置檔中啟用一或多個記者。

記者

開發人員 Proxy 會使用 記者,將報表外掛程式所產生的報表物件轉換成使用者可讀取的報表。 例如,MarkdownReporter 會將報表物件轉換成 Markdown 檔案。 記者是繼承自 BaseReporter 類別的特殊外掛程式。 它們會實作 GetReport 方法,此方法會採用報表外掛程式所建立的報表自變數,並將它轉換成字串。 接著,此字串會以 PluginName_ReporterName.ReporterExtension 模式儲存在磁碟上,例如:ApiCenterOnboardingPlugin_MarkdownReporter.md

重要

由於記者相依於報表外掛程式所產生的報表物件,因此您必須在報告外掛程式之後,在開發 Proxy 組態檔中啟用報告外掛程式。 如果您在報告外掛程式之前啟用它們,則記者不會有任何數據要報告。