13.7过滤器使用

分类: Gateway API网关

过滤器使用

过滤器用于修改请求和响应。本节将学习过滤器的使用。

本节将学习:全局过滤器、路由过滤器、请求过滤器、响应过滤器,以及自定义过滤器。

全局过滤器

配置示例

spring: cloud: gateway: default-filters: - AddRequestHeader=X-Request-Id, ${random.uuid}

路由过滤器

配置示例

filters: - StripPrefix=1 - AddRequestHeader=X-User-Id, 123

请求过滤器

过滤器类型

请求过滤器:

  • AddRequestHeader
  • AddRequestParameter
  • RemoveRequestHeader

响应过滤器

过滤器类型

响应过滤器:

  • AddResponseHeader
  • RemoveResponseHeader
  • RewriteResponseHeader

自定义过滤器

实现方式

@Component public class CustomFilter implements GlobalFilter, Ordered { @Override public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) { // 自定义逻辑 return chain.filter(exchange); } @Override public int getOrder() { return -1; } }

官方资源

本节小结

在本节中,我们学习了:

第一个是全局过滤器。 应用于所有路由的过滤器。

第二个是路由过滤器。 应用于特定路由的过滤器。

第三个是请求过滤器。 修改请求的过滤器。

第四个是响应过滤器。 修改响应的过滤器。

第五个是自定义过滤器。 如何实现自定义过滤器。

这就是过滤器使用。合理使用过滤器,可以实现丰富的网关功能。

在下一节,我们将学习跨域配置。