4. 配置路由谓词工厂和网关过滤器工厂

配置断言和过滤器有两种方式:快捷方式和完整展开的参数。下面大多数示例均使用快捷方式。spring-doc.cadn.net.cn

名称和参数名称将列在每个部分的首句或前两句中,作为 code。参数通常按快捷配置所需顺序列出。spring-doc.cadn.net.cn

4.1. 快捷配置

快捷配置由过滤器名称识别,后跟一个等号(=),再跟用逗号分隔的参数值(,)。spring-doc.cadn.net.cn

application.yml
spring:
  cloud:
    gateway:
      routes:
      - id: after_route
        uri: https://example.org
        predicates:
        - Cookie=mycookie,mycookievalue

前面的示例定义了 Cookie 路由谓词工厂,包含两个参数:Cookie 名称 mycookie 和要匹配的值 mycookievaluespring-doc.cadn.net.cn

4.2. 完全展开的参数

完全展开的参数看起来更像标准的 YAML 配置,包含名称/值对。通常会有一个 name 键和一个 args 键。而 args 键是一个键值对的映射,用于配置谓词(predicate)或过滤器(filter)。spring-doc.cadn.net.cn

application.yml
spring:
  cloud:
    gateway:
      routes:
      - id: after_route
        uri: https://example.org
        predicates:
        - name: Cookie
          args:
            name: mycookie
            regexp: mycookievalue

这是上述Cookie谓词快捷配置的完整配置。spring-doc.cadn.net.cn