由于项目之前是把网关的路由配置放在了nacos上,但频繁的添加服务的话,对应的配置也要修改,所以这种方式不适合。

spring:
  cloud:
    gateway:
      locator:
        enabled: true
      routes:
        - id: auth-server
          uri: lb://auth-server
          predicates:
            - Path=/auth/**
          filters:
            # # 验证码处理
            # - ValidateCodeGatewayFilter
            # 前端密码解密
            - PasswordDecoderFilter
            - StripPrefix=1
        - id: openapi
          uri: lb://develop-gateway
          predicates:
            - Path=/v3/api-docs/**

spring cloud gateway支持开启从配置中心拉取服务列表自动创建路由配置,这样的话,新加的服务就不需要手动添加配置了

spring:
  cloud:
    gateway:
      locator:
        enabled: true
      routes:
        - id: payment_routh #payment_route    #路由的ID,没有固定规则但要求唯一,建议配合服务名
          uri: lb://cloud-payment-service #匹配后提供服务的路由地址
          predicates:
            - Path=/payment/get/**         # 断言,路径相匹配的进行路由

那这种的话,如果想看路由列表那就需要把端点暴露。

management:
  endpoint:
    gateway:
      # gateway 端点开启
      enabled: true

访问http://localhost:8001/actuator/gateway/routes

 完事

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐