我在AKS上部署了两个Kubernetes服务,它们从Nginx Ingress控制器接收流量。这两个服务的端点是https:<dns>/service1
和https:<dns>/service2
。现在我想为每个服务设置Swagger。下面是我为其中一个服务设置Swagger UI的方法。
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/service1/swagger/v1/swagger.json", "API V1");
});
使用这个设置,我可以通过
https:<dns>/service1/swagger
访问swagger。现在的问题是,在Swagger UI中,当我想通过单击“试一下”按钮然后单击“执行”按钮来测试api时,Swagger UI访问的URL是
https:<dns>/api/v1/contoller
而不是 https:<dns>/service1/api/v1/contoller
。这意味着Swagger UI不知道路径/service1/
的存在。我发现了许多类似于这个问题的相关问题,例如如何更改ASP.NET core中Swagger的基本URL。但它们不是我的问题的解决方案。我猜我需要为Swagger设置一个基本路径。如果有人能告诉我如何在ASP.NET core 2.0中配置Swagger的基本路径,我将不胜感激。