Spring-Cloud-Gateway学习心得

巢烨
2023-12-01

1.引入pom依赖

	<dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-gateway</artifactId>
    </dependency>
  1. 2.application.yml 配置文件
spring:
  profiles:
    active: @activedProfile@    #多环境的配置
  jackson:
    date-format: yyyy-MM-dd HH:mm:ss #设置时间格式
    timeZone: GMT+8     #设置时区  GMT+8北京时间
  http:                
    encoding:
      charset: UTF-8#设置编码格式解决论码问题
      enabled: true
      force: true
  cloud:
    gateway:
      discovery:
        locator:
          lowerCaseServiceId: true   #true:我们就可以通过小写的服务名称进行访问    false:服务名称必须大写		  
          #(其实写true和false都可以用小写去路由)
          enabled: true#是否与服务注册于发现组件进行结合,通过 serviceId 转发到具体的服务实例。默认为false,
                         #设为true便开启通过服务中心的自动根据 serviceId 创建路由的功能
  			#(其实写true和false都可以用实例名去路由)
      routes:
        - id: tenant-service#唯一id ,不定义的话为一个uuid
          uri: lb://tenant-service  #http请求为lb://前缀 + 服务id;ws请求为lb:ws://前缀 + 服务id;表示将请求负载到哪一个服务上
          order: 8092 # 越小越优先
          predicates:#断言   只有符合这个规则的请求才会走这个路由  备注:(断言为一个数组,每个规则之间为并且的关系。)
            - Path=/api/tenant/**# 路径匹配规则:所有的/api/tenant/**路径都会被转发到tenant-service服务上
          filters:#请求转发前的filter,为一个数组
            - StripPrefix=1 #请求转发前截掉/api/
        - id: account-service
          uri: lb://account-service # 
          order: 8093
          predicates:
            - Path=/api/account/**
          filters:
            - StripPrefix=1
``
 


 类似资料: