构建万能 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,需要为数组
相关推荐
MC皮蛋侠客14 分钟前
AsyncIOScheduler 使用指南:高效异步任务调度解决方案
网络·python·fastapi
Mr_Zuo35 分钟前
Android调用python库和方法的实现
android·python
大模型真好玩36 分钟前
深入浅出LangChain AI Agent智能体开发教程(五)—LangChain接入工具基本流程
人工智能·python·mcp
该用户已不存在37 分钟前
2025 年,Python工具别只知道Pycharm了
前端·后端·python
LiuYiCheng1234561 小时前
Python爬虫实践:高效下载XKCD漫画全集
爬虫·python
程序媛一枚~1 小时前
使用Python,OpenCV计算跑图的图像彩色度
开发语言·python·opencv
DAWN_T171 小时前
关于网络模型的使用和修改/保存和读取
网络·人工智能·pytorch·python·深度学习·神经网络·机器学习
golitter.2 小时前
python中的 @dataclass
开发语言·python
LiuYiCheng1234562 小时前
WebCrawler库:从网页抓取到智能处理的Python利器
开发语言·python
演绎平生2 小时前
一个Pycharm窗口添加多个项目来满足运行多个项目的需求
python