大摇大摆地覆盖基础 url UI
Override base url in swagger UI
我们的服务有两个实例。 Live 可运行并具有 URL .../bazaar,Beta 用于 public 测试并具有 URL .../betabazaar。
我们部署了一个 Swagger UI 实例,并将 url 更改为获取 .../betabazaar/swagger.json,这很有效。但是当我使用 "try out" 时,所有请求都会转到 .../bazaar/...
我假设 Swagger 使用 @ServicePath 参数来填充路径。对于这两种情况,@ServicePath 都是 /bazaar。我们的 Nginx 代理服务器负责将对 .../betabazaar/... 的所有请求发送到 beta 实例。
那么我可以更改 URL Swagger UI 在 Swagger UI 中用于 "try it out" 请求吗?还是我需要更改 Java 中的@ServicePath?
我已经玩过 window.swaggerUi.setBasePath('/betabazaar');但这导致 Swagger UI 首先尝试获取 http://example.com/api。
正确的叫法是
window.swaggerUi.setBasePath('/betabazaar');
需要在onComplete回调中调用
您可以通过调用 setBasePath
:
覆盖 onComplete
方法中的 basePath
window.swaggerUi = new SwaggerUi({
...
onComplete: function(swaggerApi, swaggerUi) {
swaggerApi.setBasePath('/betabazaar')
// Alternatively
swaggerUi.api.setBasePath('/betabazaar')
// Also this is possible
window.swaggerUi.api.setBasePath('/betabazaar');
}
}
也可以覆盖主机(顺便说一句,这是我正在寻找的)。
我们的服务有两个实例。 Live 可运行并具有 URL .../bazaar,Beta 用于 public 测试并具有 URL .../betabazaar。
我们部署了一个 Swagger UI 实例,并将 url 更改为获取 .../betabazaar/swagger.json,这很有效。但是当我使用 "try out" 时,所有请求都会转到 .../bazaar/...
我假设 Swagger 使用 @ServicePath 参数来填充路径。对于这两种情况,@ServicePath 都是 /bazaar。我们的 Nginx 代理服务器负责将对 .../betabazaar/... 的所有请求发送到 beta 实例。
那么我可以更改 URL Swagger UI 在 Swagger UI 中用于 "try it out" 请求吗?还是我需要更改 Java 中的@ServicePath?
我已经玩过 window.swaggerUi.setBasePath('/betabazaar');但这导致 Swagger UI 首先尝试获取 http://example.com/api。
正确的叫法是
window.swaggerUi.setBasePath('/betabazaar');
需要在onComplete回调中调用
您可以通过调用 setBasePath
:
onComplete
方法中的 basePath
window.swaggerUi = new SwaggerUi({
...
onComplete: function(swaggerApi, swaggerUi) {
swaggerApi.setBasePath('/betabazaar')
// Alternatively
swaggerUi.api.setBasePath('/betabazaar')
// Also this is possible
window.swaggerUi.api.setBasePath('/betabazaar');
}
}
也可以覆盖主机(顺便说一句,这是我正在寻找的)。