Как я могу изменить swagger-ui.html для springfox?

Я использую чванливую реализацию Springfox. Я хотел бы изменить swagger-ui.html так, чтобы он принимал пользовательское значение заголовка. Как мне изменить этот файл? Или сказать весенней лисе использовать альтернативный файл?

3 ответа

Решение

Если вы собираетесь настраивать swagger-ui, я бы порекомендовал добавить личную копию swagger-ui в ресурсы вашего веб-приложения и изменить интерфейс в соответствии с вашими потребностями.

Swagger-UI в комплекте с Springfox не является обязательным.

  1. Вытащите интерфейс Swagger из github.

    https://github.com/swagger-api/swagger-ui

  2. Скопируйте и вставьте каталог dist пользовательского интерфейса swagger в каталог ресурсов

  3. Замените код ниже в конфигурации Swagger

    замещать

    registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
    

    с

    registry.addResourceHandler("**").addResourceLocations("classpath:/dist/");
    
  4. Измените путь api docs в index.html на ваш путь

    замещать

    http://petstore.swagger.io/v2/swagger.json
    

    С

    http://localhost:8080/your_app/v2/api-docs
    
  5. Используйте шаблон URL ниже, чтобы увидеть страницу пользовательского интерфейса

    http://localhost:8080/your_app/index.html

Да, включите пользовательский интерфейс в ваш проект и выполните следующие действия: https://github.com/springfox/springfox/issues/1176

Затем отредактируйте файл index.html и укажите, где он указывает на домашнее хранилище для вашей конечной точки. (т.е. " http://localhost:8080/MyProjectName/v2/api-docs");

 $(function () {
  var url = window.location.search.match(/url=([^&]+)/);
  if (url && url.length > 1) {
    url = decodeURIComponent(url[1]);
  } else {
    url = "http://petstore.swagger.io/v2/swagger.json";
Другие вопросы по тегам