目前,大多數 API 都是根據 method 和 path 來區分。然而,有些開發專案(例如某些電子商務 API 文件)會使用固定 URL 作為 API 請求,並透過 Query / Header 中的參數來區分 API。在 2.2.9 版本之後,Apidog 新增了 端點唯一識別功能,支援使用 OperationId、Query 參數、Body 參數 和 Header 參數 作為區分 API 的參數。設定端點唯一識別#
端點唯一 ID 定義在目錄層級。當你需要將某個 API 設定為唯一識別時,需要在其父目錄中進行設定。點擊該目錄,依照需求選擇唯一識別參數,點擊儲存後,設定將會對該目錄下的所有 API 生效。在此範例中,我們會選擇 Query 參數,並在 param name 中填寫 OperationID。填寫對應的參數值#
為 目錄設定端點唯一識別後,點擊該目錄下的某個 API,再點擊 operationid 分頁。在 API 底部的基本資訊和請求參數中,都會出現一個 K 圖示,代表該參數是 端點唯一 ID 的參數。你可以在對應參數下輸入相應的值,作為端點唯一識別的值。使用唯一識別匯入#
如果你的專案中使用 Query/Header 中的參數來區分 API,並將 OpenAPI 格式的檔案匯入 Apidog,將會出現以下頁面。匯入時比對 API 的規則取決於目標目錄的設定。如果目標 目錄中的端點唯一識別設定不符合需求,你可以在匯入設定中修改。修改後會直接對目標目錄生效。以此為例,我們會匯入此目錄,並使用 Query Param 以及名為 action 的 Param Name 為其建立端點唯一 ID。請記住,如果你的目錄已經有唯一 ID,新的匯入無法覆寫它。
1.
已在 Query 參數中使用 Fixed Value 的使用者不必擔心,因為此功能仍會保留。不過,在匯入時,Fixed Value 是根據 URL 來判斷,因此建議已使用 Fixed Value 的使用者改用端點唯一識別。
3.
如果你的目錄中只有某個子目錄被設定為端點唯一識別, 在匯入 Swagger 並更新所有目錄時,請避免將所有專案匯入到根目錄進行更新。建議將設定為端點唯一識別的 API 分別匯入到該特殊目錄中。
模擬資料#
從 2.2.24 版本開始,如果 API 已將唯一識別碼設定為 Body Parameter 或 Header Parameter,你需要傳送路徑 + 唯一識別碼的參數名稱和值,才能取得對應的模擬資料。1.
在開發期間存取模擬資料時,如果 API 已將唯一識別碼設定為 Body Parameter 或 Header Parameter,前端開發人員也需要傳送路徑 + 唯一識別碼的參數名稱和值。
2.
對於 API 具有唯一識別碼的專案,API 文件需要標準化,以避免出現 API 具有相同 URL 但未設定唯一識別碼的情況。這是為了避免無法正確取得模擬資料。