適用於:所有 APIM 層
後端 API 會匯入 Azure API 管理 API,或手動建立和管理。 本教學課程中的步驟說明如何:
- 使用 API 管理來建立空白的 HTTP API。
- 手動管理 HTTP API。
- 在 API 上設定原則,使其傳回模擬回應。
此方法可讓開發人員繼續進行 API 管理實例的實作和測試,即使後端無法傳送實際回應也一樣。
秘訣
API 小組可以在工作區中使用此功能。 工作區提供 API 及其自有 API 執行階段環境的隔離系統管理存取權。
建立模擬回應的能力在許多案例中很有用:
- 第一次設計 API 外觀時,後端實作會在稍後發生,或後端以平行方式開發時。
- 當後端暫時無法運作或無法調整時。
在本教學課程中,您會了解如何:
- 建立測試 API
- 將作業新增到測試 API
- 啟用回應模擬
- 測試模擬的 API
先決條件
- 瞭解 API 管理術語。
- 瞭解 API 管理中的原則概念。
- 完成建立 Azure API 管理實例的快速入門。
建立測試 API
本節中的步驟示範如何建立無後端的 HTTP API。
登入 Azure 入口網站,接著瀏覽至您的 API 管理執行個體。
選取 API>+ 新增 API>HTTP 磁磚:
在 [建立 HTTP API] 視窗中,選取 [完整]。
在 [顯示名稱] 中,輸入 測試 API。
在 [產品] 中,如果可用的值,請選取 [ 無限制]。 此值僅適用於某些層。 您可以將本教學課程的值保留空白,但您必須將API與產品產生關聯,才能發佈它。 如需詳細資訊,請參閱 匯入和發佈您的第一個 API。
在 [網關] 中,若此選項可用,請選取 [受控]。 (此選項僅適用於特定服務層級。
選取 [建立]。
將作業新增到測試 API
API 會公開一或多個作業。 在本節中,您會將作業新增至您所建立的 HTTP API。 若在完成本節步驟後呼叫作業,將會觸發錯誤。 完成啟用響應模擬一節中的步驟之後,您就不會收到錯誤。
選取您在上一個步驟中建立的 API。
選取 [+ 新增作業]。
在 [ 前端 ] 視窗中,輸入下列值:
設定 值 說明 顯示名稱 測試呼叫 開發人員 入口網站中顯示的名稱。 URL (第一個方塊) GET 選取其中一個預先定義的 HTTP 指令動詞。 URL (第二個方塊) /test API 的 URL 路徑。 說明 作業的選擇性描述。 它會在開發人員入口網站中提供檔給使用 API 的開發人員。 選取 [ 回應] 索引 標籤,其位於 [URL]、[ 顯示名稱] 和 [ 描述] 方塊底下。 您將在此索引標籤上輸入值,以定義回應狀態代碼、內容類型、範例和架構。
選取 [+ 新增回應],然後從清單中選取 [200 確定 ]。
在 [ 表示法] 區段中,選取 [+ 新增表示法]。
在搜尋方塊中輸入 application/json ,然後選取 application/json 內容類型。
在 [ 範例] 方塊 中,輸入
{ "sampleField" : "test" }。選取 [儲存]。
雖然此範例並非必要,但您可以在其他索引標籤上設定 API 作業的更多設定,如下表所述:
| 索引標籤 | 說明 |
|---|---|
| 查詢 | 新增查詢參數。 除了名稱和描述以外,您也可提供指派給查詢參數的值。 您可將其中一個值標記為預設值 (選擇性)。 |
| 要求 | 定義要求內容類型、範例及結構描述。 |
啟用回應模擬
選取您在建立測試 API 中建立的 API。
確定已選取 [ 設計] 索引標籤。
選取您新增的測試作業。
在 [輸入處理] 區段中,選取 [+ 新增原則]。
從資源庫中選取 [模擬回應] 圖格:
確定 200 OK,應用程式/json 會出現在 [API 管理] 回應 方塊中。 此選取範圍表示您的 API 應該會傳回您在上一節中定義的回應範例。
選取 [儲存]。
秘訣
顯示「模擬已啟用」的黃色列出現。 此訊息表示 API 管理所傳回的回應會由模擬原則進行模擬,而不是由後端產生。
測試模擬的 API
選取您在建立測試 API 中建立的 API。
在 [ 測試] 索引標籤上,確定已選取 [ 測試呼叫 API],然後選取 [ 傳送 ] 進行測試呼叫:
HTTP 回應會在教學課程的第一節中顯示提供作為範例的 JSON:
後續步驟
移至下一個教學課程:
![顯示 Azure 入口網站中 [API] 頁面的螢幕快照。](media/mock-api-responses/mock-api-response-02.png)

![顯示 [建立 HTTP API] 視窗的螢幕快照。](media/mock-api-responses/create-http-api.png)
![顯示 [前端] 視窗的螢幕快照。](media/mock-api-responses/frontend-window.png)
![顯示 [回應] 索引標籤的螢幕快照。](media/mock-api-responses/add-response.png)
![顯示 [表示法] 區段的螢幕快照。](media/mock-api-responses/add-representation.png)



