微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ingress 背后的两个 swagger API asp.net core

如何解决Ingress 背后的两个 swagger API asp.net core

我有两个 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 举报,一经查实,本站将立刻删除。