接口管理工具、yapi、y-api

软件前提:

  • mongodb
  • node.js

安装参考

系统准备,不一定需要

  1. # 禁用selinux
  2. vim /etc/selinux/config
  3. SELINUX=enforcing改为SELINUX=disabled
  4. 重启系统
  5. # 关闭防火墙
  6. systemctl stop firewalld
  7. systemctl disable firewalld

基础安装

  1. 1. 安装,如果下载github失败,可以手动下载,并安装js npm install --production
  2. npm install -g yapi-cli
  3. 2. 启动,如果端口9090被占用,先修改config.json里的port
  4. yapi server
  5. 然后根据提示访问ip:9090 进行配置(默认接口)
  6. 账号名:"tianyunperfect@gmail.com",密码:"ymfe.org"
  7. 3.配置
  8. vim /root/my-yapi/config.json

启动

  1. npm install pm2 -g
  2. # 运行js文件
  3. pm2 start /home/alvin/my-yapi/vendors/server/app.js

升级

  1. cd {项目目录}
  2. yapi ls //查看版本号列表
  3. yapi update //升级到最新版本
  4. yapi update -v v1.1.0 //升级到指定版本

浏览器插件

使用浏览器插件才能使用接口测试,解决跨域的问题。
下载后,解压,然后在开发模式下安装。

参考:

基础安装和使用

1、搜索安装:EasyYapi

2、在controller Generate… ,记得给controller、函数、字段都加上注释,否则就会默认英文名字了。
提示:第一次使用时,会要求填写yapi地址、token。
image.png
3、查看效果

image.png
**

管理项目配置


方式一:默认每个项目的配置都会在idea 的 **Preferences(Settings) > Other Settings > EasyApi 中配置。
image.png
方式二:在项目目录下新建:.easy.api.config ,参考上图中的Recommend

  1. #yapi mock
  2. field.mock=#mock
  3. #小数点后两位
  4. float_with_two=@natural(0,10000).@natural(0,100)

配置规则

mock,语法参考 官网示例

名称 类型 是否必须 默认值 备注 其他信息
rangeInt integer 非必须 mock: @integer(666,999)
positiveOrZeroFloat number 非必须 mock: @float(0,88888888,6)
maxInt integer 非必须 mock: @integer(0,999)
minInt integer 非必须 mock: @integer(666)
assertFalse boolean 非必须 mock: false
maxDouble number 非必须 mock: @float(0,999)
minDouble number 非必须 mock: @float(666)
positive integer 非必须 mock: @integer(1,88888888)
positiveOrZero integer 非必须 mock: @integer(0,88888888)
str string 必须
negative integer 非必须 mock: @integer(-888888888,-1)
rangeFloat number 非必须 mock: @float(66,9999,6)
assertTrue boolean 非必须 mock: true
negativeOrZero integer 非必须 mock: @integer(-888888888,0)
positiveFloat number 非必须 mock: @float(0.01,88888888,6)
email string 非必须 mock: @email

java示例

  1. import lombok.AllArgsConstructor;
  2. import lombok.Data;
  3. import java.util.List;
  4. @Data
  5. @AllArgsConstructor
  6. public class PageResult<T> {
  7. /**
  8. * 第几页
  9. *
  10. * @mock 1
  11. */
  12. private Integer currentPage;
  13. /**
  14. * 每页数量
  15. *
  16. * @mock 10
  17. */
  18. private Integer pageSize;
  19. /**
  20. * 总数
  21. *
  22. * @mock @integer(9,99)
  23. */
  24. private Long total;
  25. private List<T> list;
  26. }