社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

GitHub 新项目!快速生成接口文档和模拟数据,开发联调效率杠杠滴

GitHub精选 • 4 年前 • 715 次点击  

【公众号回复 “1024”,免费领取程序员赚钱实操经验】

说起前后端,避免不了一系列的协作问题,包括但不限于接口没有及时给出、文档没有及时编写、接口写好后又时好时坏、系统未完成造数据困难……

先评估现在常见的解决方案

直接在用到的地方写死数据。例如直接把数据写到模版上,或者变量值的声明位置,或者一个 json 文件。

  • 优点

    • 简单

    • 见效快

  • 缺点

    • 死数据,编写麻烦

    • 可维护性差

    • 造成大量冗余代码

项目代码内分模块编写 mock 代码。例如创建专门的 mock 目录,使用 mockjs 进入 ajax 拦截实现接口和数据模拟。要对于上一个方案而言,造数据容易得多,并且减少了代码入侵。

  • 优点

    • 外置依赖最小

  • 缺点

    • 解耦性差

    • 浏览器看不见请求

    • 不支持文件流

自己实现一个服务端。例如使用 express 这些接口库,专门开一个项目来做接口模拟,这要求有一定的额外知识储备。

  • 优点

    • 定制性最强

  • 缺点

    • 需要额外维护一个项目

    • 需要自己开发对应的数据生成及其他功能

使用在线的模拟平台,例如一些在线 mock 服务。

  • 优点

    • 交互良好,多人协作

  • 缺点

    • api 路径定制性差

    • 或有数据敏感风险

    • 不支持离线开发

    • 不支持文件流

关于 mockm 能给到的

  • 小巧易用

    • 安装包 430KB,解包大小 1.79 MB

    • npm 一键安装,跨平台使用

    • 支持 UI 界面操作

  • 接口自动创建

    • 支持 Restful API,给一个对象即可生成增删改查一系列接口

    • 支持 WebSocket 实时通讯

    • 支持文件流,例如上传,下载

  • 数据生成

    • 支持使用 Mockjs 语法

    • 经过增强和优化的 Mockjs 语法

    • 支持使用原生 js 写数据 (数据类型选择为 eval 即可)

    • 支持批量自动翻译和转换

    • 支持声明类型和描述

  • 辅助调试

    • 支持保存请求记录

    • 支持请求重放,编辑

    • 支持精简版 postman

    • 自动带参调试,无需登录

    • 支持自动允许跨域

    • 支持 api 拦截,注入,响应修改

    • 支持远程调试,一个属性完成内网穿透,无需花生壳,nginx,无需注册账号

  • 辅助开发

    • 开源免费

    • 高可定制

    • 开放配置,直接支持 nodejs 相关生态

    • 修改实时生效

  • 辅助部署

    • 数据和配置可移植

    • 自带进程守护

看起来比较抽象,简单来说 mockm 是一个跨平台,前后端可用的接口工具,类似一个便捷的服务端模拟服务,然后附带一些联调接口时会用到的功能,例如精简版 postman,可以自动带 token 调试接口,无需担心帐号被挤,请求信息可重放和可查阅。

由于是一个服务端的实现,支持更多的模拟场景,例如文件的上传下载、静态资源访问、WebSocket实时通讯,接口代理和拦截……经过封装,很简单就能实现所要模拟的接口。

以下是一些示例。

创建 API


从文本批量转换为接口和数据

为了方便快速造数据,可以 从文本批量转换为接口和数据,假设有这样一个接口: /api/user,只需给出以下格式的内容:

会自动转换为:

然后访问接口返回:

当然,响应的格式是完全可以自定义的。如果觉得这个功能比较鸡肋,也可以看看其他功能。

快速生成 Restful API

假设我要写一个博客文章的列表,并且要实现添加文章、查询文章、分页、模糊搜索、删除、修改等各种功能的接口。那么只需添加以下内容:

这时候上面要实现的所有接口已经实现了。这里我用 http 作为请求工具简单表示几个功能,你可以使用你喜欢的工具发送请求。

  • GitHub:https://github.com/wll8/mockm

  • 文档:https://hongqiye.com/doc/mockm

最近,章鱼猫建了一个「GitHub 精选交流群」,欢迎大家一起交流优秀开源项目,也可以宣传自己的开源项目,在 「GitHub 精选」公众号后台回复【加群】邀请你入群。

---特别推荐---

特别推荐:一个新的优质的专注分享各种浏览器插件、黑科技教程、各种你想不到的高效率软件及工具的公众号,「黑科技指北」,非常值得大家关注。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/107967
 
715 次点击