У меня есть сервер ресурсов Spring Boot, использующий SpringFox для создания документации пользовательского интерфейса Swagger для REST API. Я использую Spring версии 2.2.4.RELEASE и SpringFox версии 3.0.0-SNAPSHOT.
Когда я запускаю приложение, размещенное на собственном хостинге, URL-адреса в документации верны, они выглядят следующим образом:
http://localhost:8080/customers
Но когда я запускаю то же приложение на tomcat, URL-адреса выглядят так:
https://myapp.azurewebsites.net/my-app-1.0.0/my-app-1.0.0/customers
Путь приложения дублируется для всех API, путь должен быть:
https://myapp.azurewebsites.net/my-app-1.0.0/customers
Другая проблема - ссылка api-docs, это неверно для автономных, но правильно для сред, размещенных на Tomcat. Обе среды хостинга, включая приложение, которое неверно при самостоятельном размещении, но затем оно не дублируется, как все остальные в tomcat:
http://localhost:8080/my-app-1.0.0/v2/api-docs
Кроме того, в документации указан путь к приложению (здесь не дублируется). Путь к приложению не включается при самостоятельном размещении.
Я попытался указать путь контекста в файле application.yml, но это не помогло (я пробовал как server.servlet.contextPath, так и server.servlet.context-path)
Как заставить SpringFox генерировать правильные URL-адреса?