问题描述
我有两个 swaggers API,它们有两个单独的实现,它们都部署在入口控制器类型 Nginx 后面的 K8s 中。
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
Metadata:
name: test-ingress
namespace: default
annotations:
kubernetes.io/ingress.class: "Nginx"
cert-manager.io/cluster-issuer: "prod_issuer"
Nginx.ingress.kubernetes.io/ssl-redirect: "true"
Nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
Nginx.ingress.kubernetes.io/default-backend: Nginx-errors
Nginx.ingress.kubernetes.io/custom-http-errors: '403,404,503,400,500'
spec:
tls:
- hosts:
- test.com
secretName: letsencrypt-prod
rules:
- host: test.com
http:
paths:
- path: /
backend:
serviceName: ServiceA
servicePort: 80
- path: /swagger
backend:
serviceName: ServiceA
servicePort: 80
- path: /swaggerTwo
backend:
serviceName: ServiceB
servicePort: 80
我目前的创业班看起来像
app.UseSwaggerUI(c =>
{
c.DocumentTitle = "Test ServiceB API";
c.DocExpansion(DocExpansion.None);
c.SwaggerEndpoint("/swagger/v1/swagger.json","ServiceB API");
});
basePath 为两个(swaggers)服务配置为:https://test.com/swagger
如何根据服务名称路由到不同的 swagger UI?现在只有 serviceA 在工作? 同时运行并包含 api 调用的最佳做法是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)