YApi 是高效、易用、功能强大的 api 管理平台,旨在为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API,YApi 还为用户提供了优秀的交互体验,开发人员只需利用平台提供的接口数据写入工具以及简单的点击操作就可以实现接口的管理
特性
-
基于 Json5 和 Mockjs 定义接口返回数据的结构和文档,效率提升多倍
-
扁平化权限设计,即保证了大型企业级项目的管理,又保证了易用性
-
类似 postman 的接口调试
-
自动化测试, 支持对 Response 断言
-
MockServer 除支持普通的随机 mock 外,还增加了 Mock 期望功能,根据设置的请求过滤规则,返回期望数据 支持 postman, har, swagger 数据导入
-
免费开源,内网部署,信息再也不怕泄露了
环境要求
- nodejs (7.6+)
- mongodb (2.6+)
- git
部署流程
-
关于nodejs、mongodb、git的安装不做赘述,自行百度
-
全局安装yapi-cli脚手架并启动脚手架服务
npm install -g yapi-cli --registry https://registry.npm.taobao.org yapi server
-
浏览器访问localhhost:9090填写项目生成表单并开始部署
- cd到项目生成的根目录执行命令启动并访问localhhost:3000
node vendors/server/app.js
- 用当时生成项目时候生成的账号密码登录
pm2配置
为了便于项目启动和管理可以全局安装pm2进行项目进程管理
-
全局安装pm2
npm install pm2 -g //安装pm2
2.在生成的项目内新建pm2启动配置文件pm2.json,键入一下内容
{
"apps" : [
{
"name" : "NODE-YAPI",
"script" : "app.js",
"cwd" : "./vendors/server/",
"args" : [],
"node_args" : "--harmony",
"merge_logs" : true,
"error_file" : "./log/pm2log/pm2.error.log",
"out_file" : "./log/pm2log/pm2.out.log",
"log_date_format" : "YYYY-MM-DD HH:mm Z",
"instances" : 1,
"exec_mode" : "cluster",
"max_memory_restart" : "200M",
"env": {
"NODE_ENV": "production"
},
"env_development": {
"NODE_ENV": "development"
},
"env_production" : {
"NODE_ENV": "production"
}
}
]
}
-
根目录执行pm2命令启动
pm2 start pm2.json --env development
使用教程
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
- docker-compose一键部署yapi
- docker-YApi: 更易用的 YApi 镜像
- 使用DockerCompose构建部署Yapi