构建万能 MOCK-API

构建万能 MOCK-API

前言

现代化项目基本上都是前后端分离的,基于此,后端可以通过Postman等工具调试自己的功能是否能正常运行,而针对前端来说,有些场景需要依赖后端的数据进行测试,这样就会被变成了单线程,被阻塞了,着实没必要

为了解决这个问题,特地构建了一个镜像,在简单的新功能开发的时候,可以直接修改环境变量,实现跟生成环境一模一样的数据结构请求地址,和完全相同的交互方式,这样就能无缝切换基础的请求地址,而不用改动任何功能

使用说明

  • 直接将Docker 镜像运行起来即可,也可以自行构建环境运行

GIT 地址

https://github.com/smallseapig/power-api.git

基础用法

  • 通过在指定路径创建JSON实现接口自动生成

模拟 API

  • 调用创建模拟API的接口,即可自动生成可访问的API接口

  • 只支持POST方法,支持以下几种接口,后缀为get-mock, create-mock, delete-mock, delete-mock-allappend-mock的方法

    • 查询所有可用的MOCK-API: http://localhost:8080/get-mock

    • 新增(覆盖)可用的MOCK-API: http://localhost:8080/power/mock-api/create-mock

      • 新增完成后,通过去掉后缀create-mock即可正常调用,如:http://localhost:8080/power/mock-api
    • 删除可用的MOCK-API: http://localhost:8080/power/mock-api/delete-mock

    • 查询所有可用的MOCK-API: http://localhost:8080/delete-mock-all

    • 【高定制功能】针对定制数据结构,支持数据追加分页查询

      • 定制的数据结构为xxx.data.records,示例如下:
      json 复制代码
      {
          "code": 0,
          "msg": "查询成功!",
          "data": {
              "records": [
                  { "id": "1864592907632418825" },
                  { "id": "1864592907632418825" }
              ],
              "total": 220,
              "size": 10,
              "current": 1,
              "pages": 22,
              "tag": null
          }
      }
      • 追加数据: http://localhost:8080/power/mock-api/append-mock

      • 分页查询:针对定制化数据,默认支持分页查询和条件查询,如:http://localhost:8080/power/mock-api,如果数据为常规数据,会自动切换为普通的MOCK-API

使用案例
  • 通过Postman等工具调用接口
  1. 新增MOCK-API

只支持POST方法,调用接口http://localhost:8080/power/mock-api/create-mock,在body中写入以下数据

json 复制代码
{
  "code": 200,
  "msg": "测试数据",
  "data": []
}
  1. 使用MOCK-API

只支持POST方法,调用接口http://localhost:8080/power/mock-api

高级用法

万能接口

  • 直接调用http://localhost:8080/的任意接口,支持后缀为get, create, page, update, delete的所有方法
使用案例
  • 使用GET方法调用查询接口,http://localhost:8080/power/get

    • 支持paramsid
    • 支持bodyid
    • 支持bodyids,需要为数组
  • 使用POST方法调用新增接口,http://localhost:8080/power/create

  • 使用POST方法调用查询接口,http://localhost:8080/power/page

  • 使用PUT方法调用查询接口,http://localhost:8080/power/update

  • 使用DELETE方法调用查询接口,http://localhost:8080/power/delete

    • 支持paramsid
    • 支持bodyid
    • 支持bodyids,需要为数组
相关推荐
默_笙1 天前
🍙 给每个请求过安检:FastAPI 是怎么把校验写进类型注解的
python
qq_426003961 天前
启动playwright录制codegen生成自动化测试脚本
python·自动化
虎头金猫1 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
长沙三为智能科技1 天前
家政小程序开发从0到上线:五阶段交付流程与验收清单
python
伞伞悦读1 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
只睡四小时1 天前
Canvas 弹道联机实战:700 行 + 固定时间步长
python·websocket·html5·游戏开发·canvas
奇思妙想聪明勤奋的小羊1 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型
lpfasd1231 天前
2026年第38周GitHub趋势周报
python·科技·github
IZero071 天前
Jev 与 Laya
python·语言模型