Yapi 由 YMFE开源,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护API。
权限管理
YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求
可视化接口管理
基于 websocket的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率
Mock Server
易用的 Mock Server,再也不用担心 mock 数据的生成了
自动化测试
完善的接口自动化测试,保证数据的正确性
数据导入
支持导入swagger, postman, har数据格式,方便迁移旧项目
插件机制
强大的插件机制,满足各类业务需求
Yapi支持内网部署,只需在管理员或内网某台机器上安装部署一次,团队其他成员不需要部署,访问相应的地址即可使用。
yapi系统需要部署在node环境,所以得安装这玩意。嗯,新手只需要知道这个。就行java代码运行需要jdk一样。
下载:https://nodejs.org/zh-cn/download/
大家可以根据自己的系统版本进行选择安装,这里小编下载的是.msi安装包,这种安装方式比较简单,下载完成后点击安装,然后直接next就好。遇到该勾选的勾选了就行。还有安装过程中记得将nodejs添加至环境路径呀。安装路径的话默认就好,毕竟不是专业搞node开发的,占用不了多少内存空间。
安装完成后,在命令行输入path,查看node.js是否已被添加至系统环境变量。
node -v // 查看node版本
npm -v // 查看npm版本
如果安装不成功的,网上也有很多教程,这里就不一一详解了。自己找万能的度娘吧。
下载 https://www.mongodb.com/try/download/community
yapi的使用的是mongodb进行数据库存储。包括账户信息,api的接口信息等。所以需要安装mongodb数据库,否则是无法初始化yapi的安装过程的。
就下载最新版吧,反正小编安装最新版没问题。
下载完成后,双击下载的.msi文件,即可进入安装界面。直接都点击下一步好了,如果有强迫症的可以选择custom自定义安装位置。我是无脑下一步,所以mongodb的服务所在位置就是C盘了呀。安装成功后,目录结构如下。
配置mongodb
如果安装目录下没有mongod.cfg的同学,自己创建一个。如果有的话就直接打卡配置,可以使用notepadd++,或者sublimetext这两款编辑器编辑。
storage:
dbPath: C:\Program Files\MongoDB\Server\4.2\data //数据存储路径,建议改到非系统盘,该路径下会根据数据库信息自动创建文件夹和相应的文件
journal:
enabled: true
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: C:\Program Files\MongoDB\Server\4.2\log\mongod.log //日志存储路径,分析日志往这个路径找就对了
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1 //绑定 端口和ip
启动mongodb
net start mongodb
C:\Program Files\MongoDB\Server\4.2\bin //根据自己的安装路径来取 取到bin目录即可
mongo
show databases //查询数据库
exit
到这一步,mongodb数据库已经准备就绪了
详细介绍请看 yapi仓库 https://gitee.com/mirrors/YApi
使用npm安装yapi
npm install -g yapi-cli --registry https://registry.npm.taobao.org
启动yapi的安装服务
yapi server
localhost:9090
进入yapi的配置安装服务。
填写好公公司名称,管理员邮箱就可以点击开始部署了。如果部署出现问题,也可以根据提示进行解决。
部署成功后,就可以是node启动yapi服务啦。
我的yapi被默认安装在了C:\Windows\System32\my-yapi,真是个奇怪的路径。这个应该是npm安装时选择的路径,所以就将就着吧。
启动yapi
cd C:\Windows\System32\my-yapi
node vendors/server/app.js //启动指令
账号名:你设置的邮箱,初次管理员登录密码为:ymfe.org
局域网内部使用
一般window10系统安装yapi的话,都是提供给局域网内的员工使用。所以在同一局域网下的同伴可以使用你的ip地址加上端口号进行访问。
查看你自己的ip
ipconfig
一般为192.168.0.x
192.168.0.x:3000
即可访问到yapi系统主页了。
centos8系统相对于windows10系统来说要简单迅速得多。
安装nodejs
sudo yum module install nodejs
// 查看 node版本
node --version
查看npm版本
npm -v
安装mongodb
创建repo
vi /etc/yum.repos.d/mongodb-org-4.2.repo
追加内容
[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
安装
sudo yum install -y mongodb-org
管理命令
service mongod start|stop||restart //启动 停止,重启
安装yapi
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
执行yapi server 后,系统会提示访问localhost:9090端口部署yapi。如果你用的是服务器的话,这里建议在服务器的控制面板打开9090端口的访问权限。配置完成后即可关闭,配置和windows安装一样。打开9090访问权限后,就可以使用公网ip:3000的形式在本地浏览器进行配置了。如果访问不了的,再把服务器的防火墙的入栈端口9090打开即可。
备注:配置yapi完成后记得关闭9090端口访问权限呀。
启动yapi
cd /usr/local/my-yapi/mongodb/my-yapi
node vendors/server/app.js
centos下安装只需要按步骤一步步的执行上述指令即可。出现错误的话,解决了错误再接着执行。
挂载启动yapi
由于centos系统,我是使用得xshell进行连接的,所以断开连接之后,启动的进程就被砍死了。解决的方案就是执行的指令前面加上nohup指令,声明该指令挂载在后台即可。
nohup node vendors/server/app.js
如果是服务器的话,就配置一个二级域名吧。然后在nginx做域名转发至3000端口。
以nginx为例,在nginx.conf中新增一个服务。将该服务转发至3000端口。
server {
listen 80;
server_name yapi.***.com;
#charset koi8-r;
access_log logs/yapi.***.com.access.log main;
#拦截所有请求
location / {
proxy_http_version 1.1; #代理使用的http协议
proxy_set_header Host $host; #header添加请求host信息
proxy_set_header X-Real-IP $remote_addr; # header增加请求来源IP信息
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 增加代理记录
proxy_pass http://127.0.0.1:3000; #转发至3000端口呀
}
error_page 500 502 503 504 /50x.html;
}
这样就可以通过二级域名访问你的服务器的yapi了。新增二级域名之前,请先在域名解析的地方新增用于yapi的二级域名。
重启nginx服务就可以使用域名访问你的公网yapi系统了。如果要用ip:port形式直接访问的话,就打开3000端口的访问权限就可以了。但是不建议这样做呀。
添加项目组
一个项目组可以容纳多个项目,也可以被理解为公司部门。一个部门负责多个项目。新增项目组后才能在项目组中添加成员。
在项目中添加项目
创建完项目就可以在项目列表中看到了。
添加项目组成员
其他成员先注册,注册成功后把注册的名字给你才能添加成员。如下图所示,是通过用户名的形式进行检索的。并不支持已注册用户进行选择。
添加之后同一项目组的成员即可看到你创建的项目了。
添加接口分类
如果不添加接口分类,则添加的接口就会默认进入到公共分类下。建议将接口分类。
如上,新增了接口分类为小程序。
添加接口
选择项目下的接口分类,有两个地方都可以添加接口。
编辑接口详情
选择接口
点击编辑页面往下滑
如上图,即可编辑接口的请求参数,和返回参数。以及对接口做备注。编辑完成后保存即可。
上述即为一个简单的接口页面,看着倒是挺规范的呀。
接口测试
有了这个功能,后端再也不需要苦逼的用postman或者其他的工具进行测试了。yapi集成了自动化测试的功能。
数据的导入和导出
yapi支持swagger生成的api数据导入,yapi就是swagger的加强版呀简直。api数据导出时可以选择四种模式导出,具体的效果自己去一个个尝试。反正就是会超出你期望的就行了。
就聊到这里吧。更多yapi的高级玩法还请留言讨论呀!!
原创文章:转载请注明出处!!!