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