Yapi 免费且强大的开发、产品、测试接口管理工具

2021-12-10 12:19:18 浏览数 (1)

Yapi为开发、产品、测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建、发布、维护 API。

功能特点:

权限管理

YApi 成熟的团队管理扁平化项目权限配置满足各类企业的需求

可视化接口管理

基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率

Mock Server

易用的 Mock Server,再也不用担心 mock 数据的生成了

自动化测试

完善的接口自动化测试,保证数据的正确性

数据导入

支持导入 swagger, postman, har 数据格式,方便迁移旧项目

插件机制

强大的插件机制,满足各类业务需求

私有化部署

使用 yapi-cli 工具,部署 YApi 平台是非常容易的。建议部署成 http 站点,因 chrome 浏览器安全限制,部署成 https 会导致测试功能在请求 http 站点时文件上传功能异常。

环境要求

  • nodejs(7.6 )
  • mongodb(2.6 )

部署nodejs环境

下载nodejs部署包并解压

代码语言:javascript复制
cd /usr/local/
wget https://nodejs.org/dist/v13.6.0/node-v13.6.0-linux-x64.tar.gz
tar -xvf node-v13.6.0-linux-x64.tar.gz
mv node-v13.6.0-linux-x64.tar.gz nodejs

创建软连接

代码语言:javascript复制
# 建立node软链接
ln -s /usr/local/nodejs/bin/node /usr/local/bin
# 建立npm 软链接
ln -s /usr/local/nodejs/bin/npm /usr/local/bin

更换镜像源

代码语言:javascript复制
# 设置国内淘宝镜像源
npm config set registry https://registry.npm.taobao.org
# 查看设置信息
npm config list

镜像源已更换

代码语言:javascript复制
[root@localhost ~]# npm config list
; cli configs
metrics-registry = "https://registry.npm.taobao.org/"
scope = ""
user-agent = "npm/6.13.4 node/v13.6.0 linux x64"

; userconfig /root/.npmrc
registry = "https://registry.npm.taobao.org/"

; node bin location = /usr/local/nodejs/bin/node
; cwd = /root
; HOME = /root
; "npm config ls -l" to show all defaults.
[root@localhost ~]# 

验证并查看版本

代码语言:javascript复制
[root@localhost ~]# node -v
v13.6.0
[root@localhost ~]# npm -v
6.13.4
[root@localhost ~]# 

以上可以看到nodejs环境已经安装好了

部署mongodb数据库

下载地址:

代码语言:javascript复制
https://www.mongodb.com/download-center/community

下载并解压

代码语言:javascript复制
cd /usr/local/
tar -xvf mongodb-linux-x86_64-rhel70-5.0.5.tgz
mv mongodb-linux-x86_64-rhel70-5.0.5 mongodb

创建文件夹

代码语言:javascript复制
mkdir -p ./data/db
mkdir -p ./logs
mkdir ./conf
代码语言:javascript复制
[root@localhost mongodb]# ll
total 132
drwxr-xr-x 2 root root    70 Dec  8 20:52 bin
drwxr-xr-x 2 root root    25 Dec  8 20:54 conf
drwxr-xr-x 3 root root    16 Dec  8 20:53 data
-rw-r--r-- 1 root root 30608 Dec  2 23:33 LICENSE-Community.txt
drwxr-xr-x 2 root root    24 Dec  8 20:55 logs
-rw-r--r-- 1 root root 16726 Dec  2 23:33 MPL-2
-rw-r--r-- 1 root root  1977 Dec  2 23:33 README
-rw-r--r-- 1 root root 76823 Dec  2 23:33 THIRD-PARTY-NOTICES
[root@localhost mongodb]# 

创建配置文件并修改对应路径

vim ./conf/mongod.conf

代码语言:javascript复制
 systemLog:
#mongodb发送所有日志输出的目标指定为文件
    destination: file
#mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
    path: /usr/local/mongodb/logs/mongod.log
#当mongos或mongod实例重启时,其会将新条目追加到现有日志文件的末尾。
    logAppend: true
 storage:
#mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。
    dbPath: /usr/local/mongodb/data/db
    journal:
#启用或禁用持久性日志以确保数据文件保持有效和可恢复。
        enabled: true
 processManagement:
#启用在后台运行mongos或mongod进程的守护进程模式。
    fork: true
 net:
#服务实例绑定的IP,默认是localhost,为了外部访问,此处应添加局域网ip而非公网ip
    bindIp: localhost,192.168.2.224
#绑定的端口,默认是27017
    port: 27017

启动

代码语言:javascript复制
[root@localhost bin]# ./mongod -f ../conf/mongod.conf 
about to fork child process, waiting until server is ready for connections.
forked process: 1424
child process started successfully, parent exiting

看到child process started successfully表示已经启动成功、

部署Yapi服务

执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。

代码语言:javascript复制
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server

在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip

浏览器访问:ip:9090

输入公司名称,点击开始部署即可

代码语言:javascript复制
依赖库安装完成,正在初始化数据库mongodb...
 > yapi-vendor@1.10.2 install-server /usr/local/nodejs/bin/my-yapi/vendors
>  node server/install.js
log: mongodb load success...
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器
然后在浏览器打开 http://127.0.0.1:3000 访问

安装部署完成之后,去服务器部署目录

代码语言:javascript复制
/usr/local/nodejs/bin/my-yapi

输入启动命令

代码语言:javascript复制
node vendors/server/app.js
代码语言:javascript复制
[root@localhost my-yapi]# node vendors/server/app.js
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问: 
http://127.0.0.1:3000/
log: mongodb load success...
(node:1588) [DEP0066] DeprecationWarning: OutgoingMessage.prototype._headers is deprecated
(node:1588) DeprecationWarning: collection.update is deprecated. Use updateOne, updateMany, or bulkWrite instead.

浏览器访问:ip:3000

初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"

0 人点赞