SpringCloud Gateway 服务网关,过滤器

SpringCloud Gateway 过滤器有 pre 和 post 两种方式,请求首先经过 pre 过滤器处理,成功后被转发到对应的服务,然后经过 post 过滤器处理,将结果返回客户端。这种机制可以对http请求和响应进行修改。

在使用上,根据过滤器的作用范围则分为 GatewayFilter 网关过滤器和 GlobalFilter 全局过滤器,前者针对某个路由有效,需要在配置文件中的过滤器节点filters进行配置,也可以设置在default-filters上对所有路由生效;全局过滤器不需要配置,对所有路由生效。

1、GatewayFilter 网关过滤器

Gateway 内置了添加请求头,请求参数,响应头,删除请求头,请求参数,设置响应,状态,Hystrix熔断,重定向,重写路径,保存会话等十几种过滤器工厂,

也可以自定义 GatewayFilter, 需要实现 GatewayFilter 接口和 Order 接口。

2、GlobalFilter 全局过滤器

Gateway 内置了 LoadBalancer 负载均衡过滤器,

HttpClient http客户端过滤器,

Websocket相关过滤器,

ForwardPath 路径转发过滤器,

RouteToRequestUrl 转发路由Url过滤器,

WebClient 相关过滤器。

也可以自定义GlobalFilter,需要实现 GlobalFilter 接口和 Order 接口。

猜你喜欢

转载自blog.csdn.net/suoyx/article/details/115025933