У меня две службы kubernetes, развернутые на AKS, они получают трафик от контроллера входа Nginx.Конечными точками для этих двух служб являются https:<dns>/service1
и https:<dns>/service2
.Теперь я хочу настроить Swagger для каждой услуги.Ниже описано, как настроить Swagger UI для одной из служб.
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/service1/swagger/v1/swagger.json", "API V1");
});
При такой конфигурации я могу получить доступ к Swagger с помощью https:<dns>/service1/swagger
.
Теперь проблема заключается в том, чтоSwagger UI, когда я хочу протестировать API, нажав кнопку «Try it out», а затем кнопку «Excute», URL-адрес, по которому Swagger UI получает доступ, равен https:<dns>/api/v1/contoller
вместо https:<dns>/service1/api/v1/contoller
.Это означает, что Swagger UI не знает о существовании пути /service1/
.Я нашел несколько похожих вопросов, таких как этот Как изменить базовый URL Swagger в ядре ASP.NET .Но они не являются решением моей проблемы.Я думаю, мне нужно установить базовый путь для Swagger.Если бы кто-нибудь мог рассказать мне, как настроить базовый путь для Swagger в ASP.NET core 2.0, это было бы очень полезно.