构建万能 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,需要为数组
相关推荐
cheungxiongwei.com5 分钟前
Rust 驱动的 Python 工具革命:Ruff 和 uv 与传统工具的对比分
python·rust·uv
web135085886353 小时前
Python大数据可视化:基于python的电影天堂数据可视化_django+hive
python·信息可视化·django
东方芷兰3 小时前
伯克利 CS61A 课堂笔记 11 —— Mutability
笔记·python
不会Hello World的小苗6 小时前
Java——列表(List)
java·python·list
m0_748235958 小时前
Python大数据可视化:基于Python的王者荣耀战队的数据分析系统设计与实现_flask+hadoop+spider
hadoop·python·flask
Dyan_csdn8 小时前
【Python项目】基于Python的Web漏洞挖掘系统
网络·python·安全·web安全
Minner-Scrapy8 小时前
DApp 开发入门指南
开发语言·python·web app
&小刘要学习&8 小时前
anaconda不显示jupyter了?
python·jupyter
jerry-898 小时前
jupyterhub_config配置文件内容
python
奔跑吧邓邓子9 小时前
【Python爬虫(36)】深挖多进程爬虫性能优化:从通信到负载均衡
开发语言·爬虫·python·性能优化·负载均衡·多进程