模拟行为 | Qlik Cloud帮助
跳到主要内容 跳到补充内容

模拟行为

上次更新日期:2026/10/20
本部分介绍了 Mock 如何处理 API 契约中提供的各种 API 定义元素。

Mock 主要针对符合 API 契约的请求提供静态响应。它们响应请求时不考虑 API 上定义的任何安全性、请求有效负载或请求标头(用于内容协商的 Accept 标头除外)。

发起请求时,Mock 会根据用户提供的内容(示例、默认值、枚举值)或使用内置示例值来生成响应。

例如,如果请求返回一个对象,且提供了该对象的示例,则会使用该示例。如果没有,则会使用各个属性上的示例,并据此创建一个 JSON 对象。这也适用于响应头。

响应

  • 如果您的操作仅包含响应范围,则返回该范围内的第一个状态。例如,响应范围为 2XX 的操作会返回 200 响应。
  • 如果您的操作具有特定的响应代码以及响应范围或默认响应,则返回所定义的代码。例如,包含 201 响应和 3XX 响应范围的操作将返回 201 响应。
  • 如果您的操作有多个响应范围且未定义响应状态,则返回第一个范围的第一个状态。例如,具有 4XX 和 5XX 响应范围的操作 将返回 400 响应。
  • 如果您的操作仅包含默认响应,则返回的响应取决于操作方法:
    • 如果使用的方法是 POST,则会返回 201 响应。
    • 对于其他方法,如果未定义响应正文,则返回 204 响应;如果定义了响应正文,则返回 200 响应。
  • 如果您的操作未定义响应,则返回 200 响应。
  • 1XX 响应不受 mock 支持。如果操作具有 1XX 响应范围或该范围内定义的响应代码,则返回 404 响应。

组合

  • 全部:如果定义了示例,则返回该示例。如果未为该数据类型定义示例,则会合并这些类型的属性,并使用在属性级别定义的示例,或者生成示例值。如果某个属性在不同的类型中被定义了两次,则仅保留最后一个值。基本类型会被丢弃,仅返回对象。
  • Any of 或 One of:如果定义了示例,则返回该示例。如果未定义 示例,则会根据列表中的第一个类型生成响应。

限制

  • 仅在请求中可用:该属性从生成的示例中排除。
  • 仅在响应中可用:该属性包含在生成的示例中。
  • 在请求和响应中均可用:该属性包含在生成的示例中。

在数据类型级别提供的示例优先于属性。如果定义为 仅在请求中可用 的属性包含在示例中,它会在响应中返回。如果定义为 仅在响应中可用 或 在请求和响应中均可用 的属性未包含在示例中,则该属性不会在响应中返回。

本页面有帮助吗?

如果您发现此页面或其内容有任何问题 – 打字错误、遗漏步骤或技术错误 – 请告诉我们!