7

I am experiencing an issue using springfox-swagger2 v2.2.0 related to the request padding port 80 for a HTTP URL.

Is there anyway to disable the generation of the port or set the port to 443 programmatically based on a Spring Profile?

Generated CURL:

curl -X GET --header "Accept: application/json" "https://test.com:80/api/users/search"

jz15
  • 335
  • 4
  • 10

3 Answers3

4

Hit the same issue, but rather than upgrade the spring framework libraries as per @Akshay answer (thanks for pointing out the Swagger2Controller.class), I added the following property to my application-dev.yml file (replace hostname with your host).

springfox.documentation.swagger.v2.host: hostName:443

Grant Lay
  • 800
  • 7
  • 17
1

I had the same issue. It is because Swagger uses a class from Spring Framework which is adding the port 80 to the host property in the /v2/api-docs json response (Check Swagger2Controller.class). I had this issue with spring framework version 4.1.4.Release. Upgrading to latest version 4.3.2.Release fixed it.

Akshay
  • 26
  • 3
0

I had the same issue with spring boot 3.0 and openapi-starter-webmvc-ui 2.0 (My project does sit behind the load balancer)

none of the above answers worked so I tried this:

in my swagger config I added

@OpenAPIDefinition(
        servers = {
                @Server(url = "https://MyProject:443", description = "Default Server URL")
        }
)

after this swagger redirected me to 443 port instead of 80.

hope it helps