Когда я создаю файл swagger.json, я не знаю, какой хост использовать. Однако я могу это обработать, когда моя страница содержит загрузочные файлы (на самом деле я могу предложить пользователю выбор). Я надеялся увидеть options.host в config для объекта swaggerUI - я его не вижу. Есть ли существующий способ сделать это, что я не могу найти или просто мне нужно пробить свой путь через код и добавить эту возможность (указатели на лучшее место, чтобы сделать это было бы желательно)лучший способ рассказать swaggerui, где хозяин
ответ
два способа
Один изменить swagger.js так, что он принимает вариант хоста. swagger-UI передает параметры swagger-js, так что это работает. Я отправил тягу к swagger-js с этим исправлением
Второй выбор заключается в том, что swagger-UI принимает параметр «spec». Это означает, что на странице хостинга можно загрузить файл swagger.json, JSON.parse, установить в нем «host», а затем перейти к конструктору swaggerUi. Это сложнее для вызывающего абонента, но не требует изменения кода куражиться
В случае, если люди хотят отслеживать статус запроса @ pm100 pull, он находится по адресу https://github.com/swagger-api/swagger-js/pull/510#issuecomment-121776076 – Gillingham
Swagger имеет встроенную функцию, в определении json для конфигурации хоста или может принимать несколько входов.
{
"swagger": "2.0",
"info": {
"title": "Why API",
"description": "Don't make that mistake again",
"version": "0.0.1"
},
"host": "127.0.0.1:3000",
"schemes": [
"https"
]
}
Или
"host": "test.mydomain.com:3000",
"schemes": [
"https"
],
Или вы можете иметь динамический хост, определяя вар и вызов имени хоста или машины имя или другие переменные окружения.
динамический пример
if (typeof this.host === 'undefined' || this.host === '') {
this.host = location.host;
}
if (location.port) {
this.host = this.host + ':' + location.port;
}
первая часть не соответствует тому, что мне нужно. Я не знаю хозяина в то время, когда я пишу swagger.json. Вторая часть в основном говорит об изменении кода в swagger-js/lib/client.js. Не сказав, что такое мода - на самом деле я это проработал и отправил ссылку на этот файл. – pm100
Предложите удалить этот ответ, поскольку он не касается того, что на самом деле спрашивает OP, как он указывает выше. –
Вот что я делаю, так как загруженный в документе только JSON объект:
var swaggerDoc = require('./api/swagger.json');
if (process.env.NODE_ENV === 'development') {
swaggerDoc.host="localhost:" + process.env.PORT
}
// Initialize the Swagger middleware
swaggerTools.initializeMiddleware(swaggerDoc, function (middleware) {
// Other initialization
}
Таким образом, вы не загрязняет окружающую среду вашу спецификацию API с конфигурацией среды разработки.
Это, как я сделал это с помощью клиента Java:
DefaultApi api = new DefaultApi();
api.getApiClient().setBasePath("http://localhost:8080");
//call the API
В последних версиях Swagger UI это можно сделать, например, в OnComplete:
window.swaggerUi.api.setHost("your.host:4242");
Если вы размещают его на одном сервере приложений, просто удаляют ключ хоста из json и предоставляют относительный путь в ключе «basePath». as - "basePath": "/ rest/createcampaign".
- 1. Лучший Метеор Хозяин и Детальные сведения
- 2. Лучший способ рассказать владельцу draw listbox перерисовать элемент?
- 3. Лучший способ рассказать Drupal Я все еще активен?
- 4. Как я могу рассказать, где устанавливать пакеты?
- 5. Есть ли способ рассказать ширину MainMenu?
- 6. SwaggerUI получил событие
- 7. лучший способ выбора ... где в использовании linq
- 8. Где лучший способ вычисления результата в SQL?
- 9. используя xpath, чтобы рассказать селену, где нажать?
- 10. Как рассказать пользователю, где мой магазин?
- 11. cmake: как рассказать библиотеке, где найти зависимости
- 12. x86 способ рассказать инструкцию по данным
- 13. Хозяин разработки Padrino
- 14. Где я могу установить куклу для vm? Хозяин или Гость?
- 15. Страницы Github - Новая ветка-сирота - где мой хозяин
- 16. Лучший способ использования getString()
- 17. SpringBoot jar project + swaggerUI + chef + dynamic variables
- 18. Как рассказать парсеру, где искать локальную копию xml.xsd?
- 19. Лучший способ для приложения
- 20. Местоположение regex - лучший способ?
- 21. Лучший способ обработки KeyNotFoundException
- 22. Mega menu Хозяин WordPress
- 23. Отделения продолжает отслеживать хозяин
- 24. Загрузить изображение на хозяин
- 25. Tab хозяин и фрагменты
- 26. Неужели это мой хозяин?
- 27. Неизвестный хозяин RMI java
- 28. Неустрашимый бастион-хозяин недостижим?
- 29. Php сайт прибудете хозяин
- 30. Bind9 Servfail, неизвестно хозяин
Полезно? https://groups.google.com/forum/#!topic/swagger-swaggersocket/ZGYTzP0DCNM Появляется, что невозможно установить динамически в настоящее время. –