Spring Cloud Gateway系列【5】GatewayFilter网关过滤器详解

本文深入探讨Spring Cloud Gateway的过滤器,包括AddRequestHeader、RemoveResponseHeader等默认过滤器的功能和使用,以及如何配置和利用这些过滤器进行请求和响应的处理。
摘要由CSDN通过智能技术生成

文章目录

前言

Spring Cloud Gateway 中的 Filter分为两种类型,分别是Gateway Filter和Global Filter。过滤器将会对请求和响应进行处理.。比如添加参数、URL重写等。

GatewayFilter是一个接口,其有很多实现类,这是 Spring Cloud Gateway已经提供了的,使用的时候只需要在yml中配置即可。
在这里插入图片描述

默认网关过滤器

Spring Cloud Gateway 定义的网关过滤器看类名就能见名知意。
在这里插入图片描述

AddRequestHeader

AddRequestHeader需要name和value参数。

spring:
  cloud:
    gateway:
      routes:
      - id: add_request_header_route
        uri: https://example.org
        filters:
        - AddRequestHeader=X-Request-red, blue

示例表示将X-Request-red:blue消息头添加到所有匹配请求的下游请求消息头中。

AddRequestParameter

AddRequestParamete需要name和value参数。

spring:
  cloud:
    gateway:
      routes:
      - id: add_request_parameter_route
        uri: https://example.org
        filters:
        - AddRequestParameter=red, blue

表示将red=blue添加到下游请求参数中。

AddResponseHeader

AddResponseHeader需要name和value参数。

spring:
  cloud:
    gateway:
      routes:
      - id: add_response_header_route
        uri: https://example.org
        filters:
        - AddResponseHeader=X-Response-Red, Blue

表示将X-Response-Foo:Bar添加到所有匹配请求的下游响应消息头中。

DedupeResponseHeader

DedupeResponseHeader 剔除重复的响应头,接受一个name参数和一个可选strategy参数。name可以包含以空格分隔的标题名称列表。

spring:
  cloud:
    gateway:
      routes:
      - id: dedupe_response_header_route
        uri: https://example.org
        filters:
        - DedupeResponseHeader=Access-Control-Allow-Credentials Access-Control-Allow-Origin

如果网关 CORS 逻辑和下游逻辑都添加了响应头Access-Contro

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值