Kiedy buduję mój plik swagger.json, nie wiem, którego hosta użyć. Jednak mogę to sprawdzić, gdy moja strona zawiera ładunki swaggerui (w rzeczywistości mogę zaoferować użytkownikowi wybór). Miałem nadzieję, że zobaczę opcję options.host na config dla obiektu swaggerUI - nie widzę jednego. Czy istnieje sposób, aby to zrobić, że nie mogę znaleźć lub po prostu muszę włamać się przez kod i dodać tę możliwość (wskaźniki do najlepszego miejsca na to byłoby mile widziane)najlepszy sposób, aby powiedzieć swaggerui, gdzie host jest
Odpowiedz
dwa sposoby
jedną modyfikację swagger.js tak, że przyjmuje opcję hosta. swagger-UI przekazuje opcje do swagger-js, aby działał. Wysłałem polecenie pull to swagger-js z tą poprawką
Drugi wybór polega na tym, że interfejs użytkownika przechwytywania przyjmuje parametr "spec". Oznacza to, że strona hostująca może załadować plik swagger.json, JSON.parse, ustawić w nim host, a następnie przekazać do konstruktora swaggerUi. To jest trudniejsze dla rozmówcy, ale nie wymaga zmiany kodu do puszyć
W przypadku, gdy ludzie chcą monitorować stan żądania ściągania @ pm100, znajduje się on na https://github.com/swagger-api/swagger-js/pull/510#issuecomment-121776076 – Gillingham
Swagger ma wbudowany w definicji json dla konfiguracji hosta lub może akceptować wiele wejść.
{
"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"
]
}
Albo
"host": "test.mydomain.com:3000",
"schemes": [
"https"
],
Albo może masz Dynamic Host Definiując var i wywołanie hosta lub nazwę urządzenia lub innych zmiennych środowiskowych.
dynamiczny przykład
if (typeof this.host === 'undefined' || this.host === '') {
this.host = location.host;
}
if (location.port) {
this.host = this.host + ':' + location.port;
}
Pierwsza część nie odpowiada temu, czego potrzebuję. Nie znam gospodarza, kiedy piszę swagger.json. Druga część w zasadzie mówi o zmianie kodu w swagger-js/lib/client.js. Nie mówiąc o tym, co to jest mod - w rzeczywistości to opracowałem i przesłałem do niego plik ciągnienia. – pm100
Sugeruję, aby ta odpowiedź została usunięta, ponieważ nie dotyczy tego, o co faktycznie chodzi w PO, ponieważ wskazuje powyżej. –
Oto, co robię, ponieważ załadowana w dokumencie jest tylko obiekt 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
}
ten sposób nie zanieczyszcza twoja specyfikacja API z konfiguracją środowiska programistycznego.
ten sposób zrobiłem to za pomocą klienta Java:
DefaultApi api = new DefaultApi();
api.getApiClient().setBasePath("http://localhost:8080");
//call the API
W ostatnich wersjach Swagger UI jest możliwe, aby to zrobić, na przykład w onComplete:
window.swaggerUi.api.setHost("your.host:4242");
Jeśli hostują go na tym samym serwerze aplikacji, po prostu usuń klucz hosta z json i podaj względną ścieżkę w kluczu "basePath". as - "basePath": "/ rest/createcampaign".
- 1. Rekurencyjne Goroutines, jaki jest najlepszy sposób, aby powiedzieć Go, aby przestał czytać z kanału?
- 2. Najlepszy sposób, aby określić, czy zainstalowana jest platforma .NET 3.5
- 3. Jaki jest najlepszy sposób, aby logować użytkownika programowo w ExpressionEngine
- 4. Jaki jest najlepszy sposób, aby zinterpretować lokalizację użytkownika obok geocoder
- 5. Jaki jest najlepszy sposób w ES6, aby przypisać stałą warunkowo?
- 6. najlepszy sposób, aby wyczyścić zawartość .Bank StringBuilder
- 7. Najlepszy sposób, aby utworzyć IPEndpoint z ciągiem
- 8. Jak mogę powiedzieć altówce, gdzie zainstalować pakiety?
- 9. Czy jest jakiś sposób, aby powiedzieć sidekiq, że jedno zlecenie jest zależne od innego
- 10. Czy istnieje sposób, aby powiedzieć NLTK, że pewne słowo nie jest właściwym rzeczownikiem, ale rzeczownikiem?
- 11. Najlepszy sposób, aby wstawić luzem z C# DataTable
- 12. Jaki jest najlepszy sposób przetestowania aplikacji szyny?
- 13. Najlepszy sposób, aby znaleźć pozycję w Strumieniu, gdzie daną sekwencję bajtów rozpoczyna
- 14. Jak powiedzieć valgrind, aby zapamiętywać rozwidlone procesy?
- 15. Jaki jest najlepszy sposób udokumentowania kodu Perla?
- 16. Android Host Host Communication
- 17. Jaki jest najlepszy sposób zwiększania wyliczenia?
- 18. Jaki jest najlepszy sposób przełączania zmiennej binarnej?
- 19. Jaki jest najlepszy sposób na wdrożenie "timera"?
- 20. Najlepszy sposób obsługi KeyNotFoundException
- 21. Jaki jest najlepszy sposób tworzenia wewnętrznych produktów?
- 22. Jaki jest najlepszy sposób tworzenia wdrożeń ClickOnce
- 23. Jaki jest najlepszy sposób na naukę Erlanga?
- 24. Jaki jest najlepszy sposób wykonywania jQuery .change()
- 25. Czy istnieje sposób, aby powiedzieć meteorowi, że kolekcja jest statyczna (nigdy się nie zmieni)?
- 26. niezawodny sposób, aby powiedzieć, czy = jest dla przypisania w kodzie R?
- 27. Czy istnieje sposób, aby jawnie powiedzieć PyCharm, która klasa jest atrybutem instancji?
- 28. Jaki jest najlepszy sposób rejestrowania aktywności użytkowników?
- 29. Jaki jest najlepszy sposób, aby pobierać pliki z sieci programowo w systemie Android?
- 30. Najlepszy sposób na "zanegowanie" instancji
Czy można uzyskać pomoc? https://groups.google.com/forum/#!topic/swagger-swaggersocket/ZGYTzP0DCNM Wygląda na to, że aktualnie nie można ustawić dynamicznie. –