构建万能 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,需要为数组
相关推荐
qwehjk20082 分钟前
如何从Python初学者进阶为专家?
jvm·数据库·python
小熊Coding11 分钟前
重庆市旅游景点数据可视化分析系统
爬虫·python·数据挖掘·数据分析·计算机毕业设计·数据可视化分析·旅游景点
sg_knight20 分钟前
CentOS 裸机实操:5分钟完成 MinIO 单机部署与公网访问
linux·python·centos·文件管理·minio·ftp·oss
rebekk26 分钟前
PyTorch Dispatcher介绍
人工智能·pytorch·python
呱牛do it36 分钟前
企业级软件研发团队绩效考核系统开发(持续更新 Day 8)
python·fastapi·研发管理
阿kun要赚马内38 分钟前
Python面向对象:@property装饰器
开发语言·前端·python
测试19981 小时前
Python+Excel读取和存储测试数据完成接口自动化测试
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
曲幽1 小时前
FastAPI + Celery 实战:异步任务的坑与解法,我帮你踩了一遍
redis·python·fastapi·web·async·celery·background·task·queue
深蓝海拓1 小时前
使用@property将类方法包装为属性
开发语言·python
福运常在2 小时前
股票数据API(19)次新股池数据
java·python·maven