概述
Apifox 提供了一个高效的 Mock 引擎,能够根据接口文档自动生成合理的响应数据,无需额外配置。
Mock 数据可应用于以下场景:
- 前后端并行开发时,API 文档已完成但接口尚未开发,前端可以使用 Mock 数据进行开发。
- 当 API 涉及不便直接调用的生产数据时,前端可以借助 Mock 数据进行开发。
- 测试过程中,外部数据需要测试数据集时,可以使用 Mock 数据作为数据源。
开始使用
在 “文档模式” 下,位于 “接口” 标签页中。
在 “调试模式” 下,位于 “Mock” 标签页中。
Apifox 的 Mock 功能能做什么?
Apifox 的 Mock 功能可以满足以下需求:
Mock 服务器
Apifox 提供了三种 Mock 方式:本地 Mock、云端 Mock 和 Runner Mock。
本地 Mock
本地 Mock 是与 Apifox 客户端一起安装的本地服务器,它会在 Apifox 客户端启动时自动启用,并且只有在 Apifox 客户端运行时才能使用。
本地 Mock 适用于本地前端调试场景
你可以在环境管理弹窗中的本地 Mock 环境下查看该本地 Mock 服务器的 URL
本地 Mock 服务器不能关闭或从环境中移除
本地 Mock 只能在 Apifox 客户端使用,网页版不支持
云端 Mock
云端 Mock 的功能与本地 Mock 相同,但它部署在 Apifox 的服务器上。与本地 Mock 不同,云端 Mock 不依赖本地机器的开启,您可以在任何机器上随时访问云端 Mock 数据。
- 云端 Mock 适用于公开 API 的沙箱环境
- 云端 Mock 支持加密访问
- 默认情况下为关闭状态,您可以随时开启或关闭云端 Mock。
:::caution[]
Apifox 提供的云端 Mock URL 会不定时变更,仅供测试使用,“切勿” 用于生产环境。
:::
:::highlight purple
了解更多云端 Mock的信息。
:::
Runner Mock
Runner Mock 服务器部署在团队自有的 Runner 上。团队需要先在服务器上部署 Runner,之后所有成员都可以使用该 Runner 来 Mock 数据,它不依赖于本地机器是否开启。
Runner Mock 适用于大规模自动化测试的数据源或非公开 API 的沙箱环境。
:::highlight purple
了解更多自托管 Runner Mock的信息。
:::
访问 Mock 服务器
访问 Mock 服务器主要有两种方式:URL 访问和 Apifox 发送。
URL 访问
在 Apifox 的每个 HTTP 接口中,都可以找到“Mock”模块。
- 在 “文档模式” 下,位于 “接口” 标签页中;
- 在 “调试模式” 下,位于 “Mock” 标签页中。
在这里,你可以复制 Mock URL,并在任何地方使用它来请求 Mock 数据。
如果接口配置了多个响应或多个 Mock 预期,每个响应/预期都会有独立的 Mock URL。
你可以点击 “快捷请求” 按钮直接在 Apifox 中发起这些请求。
:::caution[]
请注意,如果使用 “点击复制”,它只会复制 URL,不包括请求方法和请求体。在发起请求时,你需要手动添加这些必要的部分。
:::
在 Apifox 中访问 Mock 数据
在每个 Apifox 项目中,你可以在右上角的环境管理中找到本地 Mock 和云端 Mock。
当你将环境切换到本地 Mock 或云端 Mock 时,Apifox 中的请求将会发送到对应的 Mock 环境。
:::caution[]
只有路径以 "/" 开头的 Apifox 接口才会发送到 Mock 环境。带有自定义前置 URL 或不以 "/" 开头的接口将不会发送到 Mock 环境。
:::