模擬行為
上次更新:2026/10/20本區段說明模擬如何處理 API Contracts 中可用的各種 API 定義元素。
Mock 主要針對符合 API 合約的請求提供靜態回應。它們會回應請求,而不考慮 API 上定義的任何安全性、請求承載資料或請求標頭(用於內容交涉的 Accept 標頭除外)。
發出請求時,Mock 會根據使用者提供的內容(範例、預設值、列舉值),或是使用內建範例值來建立回應。
例如,如果請求傳回物件,且有提供該物件的範例,則會使用該範例。如果沒有,則會使用各屬性上的範例,並由此建立 JSON 物件。這也適用於回應標頭。
回應
- 如果您的操作僅有回應範圍,則會傳回該範圍中的第一個狀態。例如,回應範圍為 2XX 的作業 會傳回 200 回應。
- 如果您的作業具有特定回應碼與回應範圍,或是預設回應,則會傳回所定義的代碼。例如,具有 201 回應與 3XX 回應範圍的作業會傳回 201 回應。
- 如果您的作業具有多個回應範圍且未定義回應狀態,則會傳回第一個範圍的第一個狀態。例如,具有 4XX 與 5XX 回應範圍的作業會傳回 400 回應。
- 如果您的作業只有預設回應,傳回的回應取決於作業方法:
- 如果使用的方法是 POST,則會傳回 201 回應。
- 對於其他方法,若未定義回應本文,則會傳回 204 回應;若已定義回應本文,則會傳回 200 回應。
- 如果您的操作未定義回應,則會傳回 200 回應。
- 模擬不支援 1XX 回應。如果作業具有 1XX 回應範圍或此範圍內定義的回應碼,則會傳回 404 回應。
組合
- 全部:如果已定義範例,則會傳回該範例。若未針對該資料類型定義範例,則會合併這些類型的屬性,並使用在屬性層級定義的範例,或是產生範例值。如果某個屬性在不同的型別中定義了兩次,則僅會保留最後一個值。基本型別會被捨棄,僅傳回物件。
- 任一 或 其中之一:若已定義範例,則會傳回該範例。若未 定義範例,系統將根據清單中的第一個類型產生回應。
限制
- 僅適用於請求:產生的範例中已排除該屬性。
- 僅在回應中提供:此屬性包含在產生的範例中。
- 可用於請求與回應:此屬性包含在產生的範例中。
在資料類型層級提供的範例優先於屬性。如果定義為 僅適用於請求 的屬性包含在範例中,則會在回應中傳回。如果定義為 僅在回應中提供 或 在要求與回應中提供 的屬性未包含在範例中,則不會在回應中傳回。