SpringCloud&Gateway 全局过滤器 - 全局过滤器的作用
最编程
2024-03-09 20:00:21
...
全局过滤器的作用也是处理一切进入网关的请求和微服务响应,与 GatewayFilter
的作用一样。区别在于GatewayFilter
通过配置定义,处理逻辑是固定的;而 GlobalFilter
的逻辑需要自己写代码实现。
定义方式是实现 GlobalFilter
接口。
public interface GlobalFilter {
/**
* 处理当前请求,有必要的话通过{@link GatewayFilterChain}将请求交给下一个过滤器处理
*
* @param exchange 请求上下文,里面可以获取Request、Response等信息
* @param chain 用来把请求委托给下一个过滤器
* @return {@code Mono<Void>} 返回标示当前过滤器业务结束
*/
Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain);
}
在 filter 中编写自定义逻辑,可以实现下列功能:
- 登录状态判断
- 权限校验
- 请求限流等
下一篇: kickstart