swagger2 api-docs怎么来的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swagger2 api-docs怎么来的相关的知识,希望对你有一定的参考价值。

参考技术A Swagger UI通任意种形式Swagger描述信息能渲染酷炫API文档,服务端接口...php使用Swagger,我需要工具编写解析AnnotationS津众 维原画设计提供

为啥使用 springfox 和 Swagger2 时 v2/api-docs 是默认 URL?

【中文标题】为啥使用 springfox 和 Swagger2 时 v2/api-docs 是默认 URL?【英文标题】:Why is v2/api-docs the default URL when using springfox and Swagger2?为什么使用 springfox 和 Swagger2 时 v2/api-docs 是默认 URL? 【发布时间】:2017-01-16 23:32:39 【问题描述】:

我刚开始在guide 之后使用 swagger,但我发现了一些非常奇怪的东西,对我来说毫无意义。

据我所知,当您拥有 API 版本号 2 的文档时,应该使用 v2/api-docs。

所以,默认应该只有 api-docs,但出于某种奇怪的原因,我发现默认是 v2/api-docs。

检查我找到的库文档this。

如何在以后无法使用 v2 的情况下覆盖该值? (当我的 API 达到 v2 但我还想展示遗留文档时)。

或者也许我使用 v2 的概念是错误的?有人可以帮我解决这个问题吗?

【问题讨论】:

URL 中的v2 不是指你的API 版本号,它是Swagger 规范的版本号。当前版本的 SpringFox 默认使用 Swagger 2.0,这就是你看到的。 【参考方案1】:

/v2/api-docs URL 是 SpringFox 用于文档的默认值。 v2 不是指 API 的文档版本(可以在 Docket 配置中更改),而是使用的 Swagger 规范的版本。查看 documentation here 以自定义 Swagger 文档 URL。简而言之,您需要修改环境属性以更改您的文档将出现在的 URL:

springfox.documentation.swagger.v2.path=/my/docs

这会将 SpringFox Swagger 文档的默认 URL 从 /v2/api-docs 更改为您指定的任何内容。要实现这一点,请将上述属性添加到新的或现有的属性文件中,然后将其作为属性源添加到您的 Springfox 配置类中:

@PropertySource("classpath:swagger.properties")
@Configuration
public class SwaggerConfig ...

【讨论】:

谢谢!。那么,这只是 swagger 文档的终点吗?不适用于我的 API 文档?那我该如何设置我的 api 文档呢? Swagger 是描述 API 端点的规范。您在/v2/api-docs 看到的是 Swagger 2.0 标准中的 API 文档(与 Swagger 1.0、RAML、RestDocs 等相反)。您可以在他们的网站上找到有关 Swagger 规范的更多信息:http://swagger.io/ 知道我的 API 文档在 v2/api-docs 中的位置吗? (因为那个 URL 已经被占用了)swagger2 会为它生成或给我一个 URL 吗? Swagger 文档位于springfox.documentation.swagger.v2.path 属性的任何值处,默认情况下为/v2/api-docs。请参阅上面的更新答案。 有没有办法改变/swagger-ui.html的路径?

以上是关于swagger2 api-docs怎么来的的主要内容,如果未能解决你的问题,请参考以下文章

13.9 SpringBoot集成Swagger2中遇到的问题

白话SpringCloud | 第十一章:路由网关(Zuul):利用swagger2聚合API文档

大陆手机怎么用swag

如何从 OpenAPI 3.0 生成 PDF 或标记?

java 获取 属性的注释

springfox 2.2.2 没有生成 api-docs