在 Visual Studio Code 中建立、瞭解和偵錯 Azure API 管理 原則

適用於:所有 API 管理層

本文說明如何使用 Azure API 管理 擴充套件 for Visual Studio Code 來建立、理解及除錯 API 管理政策。 擴充功能整合了 GitHub Copilot for Azure 以協助起草與解釋政策。

Azure API 管理 policy是一連串用於處理應用於 API 請求或回應的跨領域問題的語句。 這些問題包括認證、授權、流量控制、快取和轉換。

先決條件

限制事項

  • 原則偵錯目前僅在 API 管理 開發人員層中支援。

  • 政策除錯使用內建(服務層級)全存取訂閱,顯示名稱為 內建全存取訂閱。 您必須是服務擁有者才能使用此訂閱。

使用 GitHub Copilot for Azure 建立原則

Azure API 管理 延伸模組會與適用於 Azure 的 GitHub Copilot 整合,以協助您建立原則草稿。 在 AI 輔助下,以用戶友好的方式創建和編輯策略。

若要建立原則︰

  1. 在 Visual Studio Code 中開啟 API 管理 延伸模組。

  2. 選取您要使用的 API 管理 執行個體。

  3. 選取您要使用的原則範圍。

    • 若要建立套用至執行個體中所有 API 的原則,請選取 [全域原則]。
    • 若要建立套用至特定 API 的原則,請在 [API] 底下選取 API,然後選取 [原則]。
    • 若要建立套用至特定 API 作業的原則,請選取作業,然後選取 [原則]。
  4. 開啟 Chat。

  5. 在 [聊天] 視窗中,以自然語言輸入提示以建立原則。 範例:

    @azure I want to limit requests to 100 calls per minute
    
    @azure Create a policy that sets the backend URL to https://mybackend.contoso.com and adds a custom header to the request
    

    Copilot 會在 [聊天] 視窗中產生原則草稿。 如果您希望 Copilot 變更輸出,您可以調整提示。

  6. 當您準備好時,請選取 [ 複製 ] 按鈕將原則複製到剪貼簿,或選取 [ 在編輯器中套用 ] 以在編輯器視窗中插入原則。 如果你對政策 XML 的變更感到滿意,請選擇 保留

秘訣

請在 「問題」 視窗中檢查政策 XML 中任何問題的說明。

使用 GitHub Copilot 來解釋 Azure 的政策

Copilot 可協助說明 API 管理 實例中的現有原則。

若要接收解釋:

  1. 在 Visual Studio Code 中開啟 API 管理 延伸模組。

  2. 選取您要使用的 API 管理 執行個體。

  3. 選取您要使用的原則範圍。

    • 若要說明套用至執行個體中所有 API 的原則,請選取 [全域原則]。
    • 若要說明套用至特定 API 的原則,請在 [API] 底下選取 API,然後選取 [原則]。
    • 若要說明套用至特定 API 作業的原則,請選取作業,然後選取原則。
  4. 在出現的政策編輯器視窗中,右鍵點擊,然後選擇 「解釋」。

  5. 原則 XML 文件中原則的概觀和說明會在 Chat 視窗中產生。

使用 VS Code 延伸模組偵錯原則

適用於 Visual Studio Code 的 Azure APIM 延伸模組提供偵錯體驗,可讓您在將要求傳送至閘道時逐步執行原則管線,或設定中斷點。

起始偵錯工作階段

  1. 在 Visual Studio Code 中開啟 API 管理 延伸模組。
  2. 選取要偵錯的 API 管理 實例。
  3. 選取要偵錯的 API 和作業。
  4. 右鍵點擊操作,選擇 開始政策除錯

擴充功能開始與 API 管理閘道建立除錯會話。 在 「偵錯主控台 」視窗中檢查進度。

在 Visual Studio Code 中起始原則偵錯工作階段的螢幕擷取畫面。

備註

啟動除錯工作階段也能在工作階段中進行請求追蹤,幫助你診斷和解決問題。

傳送測試要求

建立偵錯工作階段時,REST 用戶端延伸會開啟新的編輯器,可讓您建立測試 HTTP 要求並將其傳送至閘道。

Ocp-Apim-Debug標頭會自動新增到請求中。 此標頭是必要的,且該數值必須設定為服務層級、所有存取的訂用帳戶金鑰,以觸發 APIM 網路閘道中的偵錯功能。

根據您的測試情節,修改編輯器中的 HTTP 要求。 接著選擇 「發送請求 」,將測試請求傳送到 API 管理閘道。

在 Visual Studio Code 中傳送測試要求的螢幕擷取畫面。

偵錯原則

傳送測試 HTTP 請求後,擴充功能會開啟偵錯視窗,其中會顯示此作業的有效原則,並在第一個有效原則處停止。

Visual Studio Code 中除錯視窗的截圖。

若要遵循原則準銷售案源,您可以透過個別原則執行單一步驟,或在原則上設定中斷點,並直接逐步執行該原則。

  • 「變數」 面板中,檢查系統建立和使用者建立的變數的值。
  • Breakpoints 面板中,查看你設定的所有 breakpoints 清單。
  • [呼叫堆疊] 面板中,檢視目前有效的政策範圍。

如果在執行政策時發生錯誤,你會看到錯誤發生的政策細節。

要退出除錯工作階段,請選擇 停止

Visual Studio Code 中的政策例外截圖。

秘訣

若要檢閱要求追蹤,請選取 HTTP 回應中提供的標頭值 Ocp-Apim-Trace-Location