Gateway实现统一网关

发布时间 2023-12-29 16:33:16作者: 凌碎瞳缘

新建一个子项目,然后导入gateway依赖,同时也需要被nacos注册发现

<!--        nacos服务注册发现依赖-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
<!--        网关gateway依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>

application.yml文件配置

server:
  port: 10010
spring:
  application:
    name: gateway # 服务名称
  cloud:
    nacos:
      server-addr: localhost:80 #nacos地址
    gateway:
      routes:
        - id: user-service #路由id,自定义,唯一即可
          uri: lb://userservice #路由的目标地址,lb会自动负载均衡userservice服务名的服务,也可以直接写http表示固定的目标地址
          predicates:
            - Path=/user/** #若地址为user开头,则替换本服务ip地址为上述uri进行访问
        - id: order-service
          uri: lb://orderservice
          predicates:
            - Path=/order/**