现在微服务的开发模式,避免不了前后端进行联调的工作。所以后端定义了接口,是需要输出给前端开发人员的。
- 目前java体系使用最多的是
springfox
进行集成,网上有很多相关的文章和代码,这里就不着重介绍了。下面讲讲在工作中发现的springfox
的优势和劣势
- 和
SpringBoot
集成相对简单,只需要引入对应的jar包,进行一些简单配置就可以使用 - 接口文档页面随着进程一起启动,一起关闭,并且直接可以访问当前服务的接口,方便本地和测试环境的开发和调试
- 和
eureka
方便进行结合,直接从eureka
可以通过链接地址点到对应的服务swagger页面
- 如果是微服务,那么每个实例启动都会带有接口文档页面,造成微服务的jar包相对臃肿、服务启动时间变长
- 文档应该和服务不进行耦合,没有服务应该前端人员也可以查看接口文档
- 只能访问本地进程的服务
- 对于没有外网地址的云主机,无法打开接口文档页面,进行调试
- 目前我们服务部署在阿里云上面,并且微服务部署的服务器,没有外网地址,所以不能直接使用
springfox
进行集成,办公网络无法进行访问。 - 微服务启动时间变长,想尽量减少依赖的jar包,提升服务启动速度。
- 不想文档页面依赖于启动的服务,需要进行解耦