Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why is v2/api-docs the default URL when using springfox and Swagger2?

I'm just starting using swagger following this guide, but I found out something very weird that makes no sense for me.

As far as I remember , the v2/api-docs should be used for when you have docs of the version number 2 of your API.

So, the default should be only api-docs, but for some strange reason I found that the default is v2/api-docs.

Checking the library doc I found this.

How do I override that value without later not being able to use v2? (when my API will reach a v2 but I will also want to show the legacy docs).

Or maybe my concept of using v2 is wrong? Can someone help me with this?

like image 304
jpganz18 Avatar asked Sep 08 '16 22:09

jpganz18


People also ask

What is the default Swagger URL?

Add and configure Swagger middleware The generated document describing the endpoints appears as shown in OpenAPI specification (openapi. json). The Swagger UI can be found at https://localhost:<port>/swagger .

What is Springfox Swagger2?

React + Spring Boot Microservices and Spring Swagger2 is an open source project used to generate the REST API documents for RESTful web services. It provides a user interface to access our RESTful web services via the web browser.

Is Springfox deprecated?

springfox (documentationProvider): Springfox is deprecated for removal in version 7.0. 0 of openapi-generator. The project seems to be no longer maintained (last commit is of Oct 14, 2020). It works with Spring Boot 2.5.

What is Springfox documentation?

The Springfox suite of java libraries are all about automating the generation of machine and human readable specifications for JSON APIs written using the spring family of projects.


1 Answers

The /v2/api-docs URL is the default that SpringFox uses for documentation. The v2 does not refer to your API's documentation version (which can be changed in the Docket configuration), but the version of the Swagger specification being used. Take a look at the documentation here for customizing the Swagger documentation URL. In short, you need to modify an environment property to change the URL your documentation will appear at:

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

This will change the default URL for the SpringFox Swagger documentation from /v2/api-docs to whatever you specify. To implement this, add the above property to a new or existing properties file, and then add it as a property source in your Springfox configuration class:

@PropertySource("classpath:swagger.properties") @Configuration public class SwaggerConfig {...} 
like image 58
woemler Avatar answered Sep 22 '22 08:09

woemler