记录一下,给未来的自己
前言
在开发过程中,团队里的同学使用的客户端API调用工具五花八门: Postman,Postwoman,Apifox 等,没有统一。我总结了这些工具在日常开发工作中使用的一些痛点:
- 需要下载工具到本地,换了开发环境后,需要花时间配置
- 不同工具间,数据一致性维护比较困难和低效
- 同一个工具间的数据同步,需要注册/登录账号,数据保存在外部第三方库上,不符合公司安全策略
- 接口文档的编写和接口的调用割裂,一方面,对后端来说,增加了很多工作量,另一方面,可能会出现变更后的同步不及时
- 对前端和测试不友好:需要自己根据文档编写调用接口,降低了工作效率
所以,总结来说,就是:一方面增加了无谓的工作量,另一方面,增加了团队内部和团队间协作的成本。
那么,是否有一套解决方案可以解决以上的痛点呢?
答案是:在线接口管理平台
目前市面上,比较火的管理平台有 Swagger, Rap2, YApi 等等。结合目前团队的现状和痛点,选择一套适合的够用的方案,其实就是最好的方案。针对目前我们开发团队的特点,这里选用了 YApi
YApi的功能
可视化接口管理:基于 websocket 的多人协作接口编辑功能和类 postman 测试工具,让多人协作成倍提升开发效率权限管理:扁平化用户权限管理,分admin+组长+开发+访客权限,权限策略简单有效Mock服务:易用的 Mock Server,使得前端开发不再依赖于后端自动化测试:完善的接口自动化测试,保证数据的正确性多样的数据导入:支持导入 swagger, postman, har 数据格式,方便迁移旧项目插件机制:可通过添加、开发插件来做进一步的定制化二次开发
YApi的部署
YApi 的部署,官网的教程可以看这里。我这边直接拉取 dockerhub 上的 yapi 镜像:
- 搜索yapi镜像:docker search yapi
- 选择一个yapi镜像拉取到本地:docker pull silsuer/yapidocker run -dit -p 27017:27017 -p 9090:9090 -p 3000:3000 silsuer/yapi
- 进入容器查看容器id docker ps 进入容器 docker attach container-id 启动 mongodbservice mongodb start 启动yapi安装程序 yapi server
- 根据提示在浏览器中输入ip:9090进行安装,管理员账号默认账号名:"admin@admin.com",密码:"ymfe.org"
- 回到终端,执行 nohup node /my-yapi/vendors/server/app.js 2>&1 & 在后台运行yapi【注意】也可以通过pm2来管理YApi服务,见第三章节。
- 执行 ctrl+p + ctrl+q 退出容器即可
YApi服务器管理
启动YApi服务: node /my-yapi/vendors/server/app.js
官网教程中,推荐使用pm2管理node服务器的启动,停止,重启等操作。 这里简单展开如何操作:
- 首先,下载pm2:npm i -g pm2
- 接着,启动YApi: pm2 start --name yapi /my-yapi/vendors/server/app.js
- pm2操作YApi的其他命令:pm2 info yapi //查看服务信息 pm2 stop yapi //停止服务 pm2 restart yapi //重启服务
版权声明:内容来源于互联网和用户投稿 如有侵权请联系删除