YApi 可视化接口管理平台
YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理。
为 API 开发者设计的管理平台
YApi让接口开发更简单高效,让接口的管理更具可读性、可维护性,让团队协作更合理。
项目管理
提供基本的项目分组,项目管理,接口管理功能
接口管理
友好的接口文档,基于websocket的多人协作接口编辑功能和类postman测试工具,让多人协作成倍提升开发效率
MockServer
基于Mockjs,使用简单功能强大
功能强大的 Mock 服务
你想要的 Mock 服务都在这里
Mock 规则
通过学习一些简单的 Mock 模板规则即可轻松编写接口,这将大大提高定义接口的效率,并且无需为编写 Mock 数据烦恼: 所有的数据都可以实时随机生成。
{ "errcode|200-500": 200, "errmsg|4-8": "@string", "data": { "boolean|1": true, "array|2": ["Bob", "Jim"], "combine": "@boolean & @array" } }
生成的 Mock 数据
生成的 Mock 数据可以直接用 ajax 请求使用,也可以通过服务器代理使用(不需要修改项目一行代码)
{ "errcode": 304, "errmsg": "JtkMIoRu)N#ie^h%Z77[F)", "data": { "boolean": true, "array": ["Bob", "Jim", "Bob", "Jim"], "combine": "true & Bob, Jim, Bob, Jim" } }
扁平化管理模式
接口管理的逻辑较为复杂,操作频率高,层层审批将严重拖慢生产效率,因此传统的金字塔管理模式并不适用。
YAPI 将扁平化管理模式的思想引入到产品的权限管理中,超级管理员拥有最高的权限,并将权限分配给若干组长,超级管理员只需管理组长即可,实际上管理YAPI各大分组与项目的是“组长”。组长对分组或项目负责,一般由BU负责人/项目负责人担任。
超级管理员(* N)
- - 创建分组
- - 分配组长
- - 管理所有成员信息
组长(* N)
- - 创建项目
- - 管理分组或项目的信息
- - 管理开发者与成员
开发者(* N) / 成员(* N)
- - 不允许创建分组
- - 不允许修改分组或项目信息
特性
- 基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
- 扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
- 类似 postman 的接口调试
- 自动化测试, 支持对 Response 断言
- MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据
- 支持 postman, har, swagger 数据导入
- 免费开源,内网部署,信息再也不怕泄露了
内网部署
环境要求
- nodejs(7.6+)
- mongodb(2.6+)
- git
安装
使用我们提供的 yapi-cli 工具,部署 YApi 平台是非常容易的。执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码为 ymfe.org 登录系统(默认密码可在个人中心修改)。
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
服务管理
利用 pm2 方便服务管理维护。
npm install pm2 -g //安装pm2
cd {项目目录}
pm2 start "vendors/server/app.js" --name yapi //pm2管理yapi服务
pm2 info yapi //查看服务信息
pm2 stop yapi //停止服务
pm2 restart yapi //重启服务
升级
升级项目版本是非常容易的,并且不会影响已有的项目数据,只会同步 vendors 目录下的源码文件。
cd {项目目录}
yapi ls //查看版本号列表
yapi update //更新到最新版本
yapi update -v {Version} //更新到指定版本
教程
YApi 插件
- yapi sso 登录插件
- yapi cas 登录插件 By wsfe
- yapi gitlab集成插件
- oauth2.0登录
- rap平台数据导入
- dingding 钉钉机器人推送插件
- export-docx-data 数据导出docx文档
- interface-oauth-token 定时自动获取鉴权token的插件
- import-swagger-customize 导入指定swagger接口
代码生成
- yapi-to-typescript:根据 YApi 的接口定义生成 TypeScript 的请求函数
- yapi-gen-js-code: 根据 YApi 的接口定义生成 javascript 的请求函数
YApi docker 部署(非官方)
- 使用 alpine 版 docker 镜像快速部署 yapi
- docker-yapi: 基于官方yapi-cli的docker-compose方案
- docker-compose一键部署yapi
- docker-YApi: 更易用的 YApi 镜像
- 使用DockerCompose构建部署Yapi
YApi 一些工具
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论