小编Vic*_*tit的帖子

Swagger最佳实践

我目前正在定义一个Rest API,我打算使用Swagger来记录它.我已经开始使用YAML中的Open Api规范将我的API规范定义为Swagger-Editor.

然后,我明白我将该文件提供给Swagger-codegen以生成服务器实现,并且还将Swagger-UI(其静态文件将先粘贴到我的服务器上)以提供交互式文档.

根据Swagger的说法,这是自上而下的方法.

但是后来,我可能需要修改这个API,我希望通过之前定义的这个繁琐的YAML文件来实现它,以保持API可以被任何人轻松修改(和语言无关).

  1. 这样做的方法是修改定义文件,然后重新使用Swagger-codegen?通过这种方法,我想我甚至不能在实现服务器代码中直接修改API,而不会有过时的文档.

如果我选择采用自下而上的方法(通过Swagger-core注释),我将限制在实现服务器代码中进行的所有进一步修改,并且我的初始定义文件永远不会再次使用.

  1. 所以另一个问题是:当我们想要通过规范文件和实现服务器代码修改API时,是否存在处理Swagger的常用方法(我想Swagger-core可以从我的代码中生成我的文件,永远不会像我手工定义的那样.

谢谢你的关注.

swagger

11
推荐指数
2
解决办法
4702
查看次数

获取尤里卡实例ID

我想知道是否有一种Eureka客户端知道它的实际instanceId的方法(我正在寻找一种在同一主机和分布式conf上均可使用的解决方案)。

到目前为止,我使用的是手动定义的eureka.instance.instance-id: ${spring.application.name}:${random.int},但是每次访问它的值时,由于随机性,都会得到一个新值。因此,它与注册时生成并提供给服务器的总是不同的。

netflix-eureka spring-cloud-netflix

3
推荐指数
1
解决办法
1289
查看次数