分类

API Mock Server / 请求模拟器

根据接口描述生成可运行的临时 Mock Server,使用 Redis 存储 1 小时并支持动态响应

适合前端联调和接口测试。可使用相同 mockId 重跑工具,实现热更新式覆盖。

示例结果

1 个示例

创建可运行的 Mock API 会话

生成带独立 ID 的临时 Mock Server,并在 1 小时内可直接测试

{
  "mockId": "abc123...",
  "baseUrl": "http://localhost:3000/mock/abc123/api"
}
查看输入参数
{ "mockDefinitionJson": "{\n \"name\": \"User Service Mock\",\n \"basePath\": \"/api\",\n \"endpoints\": [\n {\n \"method\": \"GET\",\n \"path\": \"/users/:id\",\n \"status\": 200,\n \"responseType\": \"json\",\n \"dynamicResponse\": true,\n \"responseBody\": {\n \"id\": \"{{params.id}}\",\n \"name\": \"Mock User\",\n \"trace\": \"{{query.trace}}\",\n \"requestedAt\": \"{{now}}\"\n }\n }\n ]\n}" }

关键信息

分类
Development
输入类型
textarea, text
输出类型
json
样本覆盖
4
支持 API
Yes

概览

API Mock Server 是一款高效的接口模拟工具,支持根据 JSON 定义快速生成可运行的临时 Mock 服务。它利用 Redis 存储接口配置,支持动态响应与参数注入,非常适合前端开发联调及后端接口测试,且支持通过 Mock ID 实现热更新式配置覆盖。

适用场景

  • 后端接口尚未开发完成,前端需要并行进行页面联调时。
  • 需要对 API 进行边界条件测试,但不想修改真实数据库时。
  • 在开发过程中需要快速验证接口逻辑,并希望实时调整响应内容时。

工作原理

  • 在 Mock 定义 JSON 中配置接口路径、请求方法及响应体结构。
  • 提交配置后,系统将生成一个唯一的 Mock ID 及对应的访问地址。
  • 通过 HTTP 请求访问生成的地址,即可获取模拟的动态响应数据。
  • 如需修改接口逻辑,只需使用相同的 Mock ID 重新提交配置即可实现热更新。

使用场景

前端开发人员在后端 API 就绪前,模拟用户数据接口进行页面渲染测试。
测试工程师通过模拟异常状态码(如 500 或 404),验证前端的错误处理逻辑。
快速构建原型演示,通过动态响应模拟真实的业务交互流程。

用户案例

1. 构建用户服务 Mock

前端开发工程师
背景原因
后端用户模块接口尚未完成,但前端需要展示用户详情页面。
解决问题
需要一个能根据 URL 参数动态返回用户信息的 API 接口。
如何使用
输入包含 GET /users/:id 的 Mock 定义 JSON,获取 Mock URL 后在前端代码中替换真实接口地址。
示例配置
{
  "name": "User Service",
  "basePath": "/api",
  "endpoints": [
    {
      "method": "GET",
      "path": "/users/:id",
      "status": 200,
      "responseBody": {
        "id": "{{params.id}}",
        "name": "测试用户",
        "requestedAt": "{{now}}"
      }
    }
  ]
}
效果
前端通过访问生成的 Mock 地址,成功获取到包含动态 ID 和当前时间戳的 JSON 响应。

2. 模拟登录接口测试

测试工程师
背景原因
需要验证登录页面的跳转逻辑,但不想连接真实的认证服务器。
解决问题
需要一个 POST 接口接收用户名并返回模拟的 Token。
如何使用
配置 POST /login 接口,并在响应体中引用请求体中的 username 字段。
示例配置
{
  "endpoints": [
    {
      "method": "POST",
      "path": "/login",
      "status": 200,
      "responseBody": {
        "token": "mock-token-123",
        "username": "{{body.username}}"
      }
    }
  ]
}
效果
成功模拟了登录请求,前端页面能够根据返回的用户名正确显示登录状态。

用 Samples 测试

json

相关专题

常见问题

生成的 Mock 服务有效期是多久?

生成的 Mock 服务基于 Redis 存储,有效期为 1 小时。

如何实现接口的热更新?

在工具中输入已有的 Mock ID 并重新提交新的 JSON 配置,即可覆盖旧的接口定义。

支持动态响应吗?

支持,您可以在响应体中使用 {{params.id}}、{{query.trace}} 或 {{now}} 等占位符获取请求参数或当前时间。

该工具支持哪些请求方法?

支持标准的 HTTP 请求方法,如 GET、POST 等,具体取决于您在 JSON 中定义的 endpoints。

Mock 服务可以被外部访问吗?

生成的 Mock URL 是公开可访问的,请确保不要在模拟数据中包含敏感的生产环境信息。

API 文档

请求端点

POST /zh/api/tools/api-mock-server

请求参数

参数名 类型 必填 描述
mockDefinitionJson textarea -
mockId text -

响应格式

{
  "key": {...},
  "metadata": {
    "key": "value"
  },
  "error": "Error message (optional)",
  "message": "Notification message (optional)"
}
JSON数据: JSON数据

AI MCP 文档

将此工具添加到您的 MCP 服务器配置中:

{
  "mcpServers": {
    "elysiatools-api-mock-server": {
      "name": "api-mock-server",
      "description": "根据接口描述生成可运行的临时 Mock Server,使用 Redis 存储 1 小时并支持动态响应",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=api-mock-server",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

你可以串联多个工具,比如:`https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`,最多20个。

如果遇见问题,请联系我们:[email protected]