Spring Cloud Gateway虽然自带有许多实用的GatewayFilter Factory、Gateway Filter、Global Filter,但是在很多业务情景下仍然需要自定义过滤器。实现一些自定义操作,满足业务需求。所以自定义过滤器就显得非常有必要。本文分表介绍自定义Gateway Filter、自定义Global Filter、自定义Gateway Filter Factory。
实现自定义过滤器,其实可以去查看Spring Cloud Gateway自带过滤器源码是如何实现的。
自定义Gateway Filter
实现自定义的Gateway Filter,需要GatewayFilter、Ordered两个接口
定义好MyFilter以后,其需要跟Route绑定使用,不能在application.yml文件中配置使用
测试结果:可以在控制台看到请求响应时间。
自定义Gateway Filter Factory
很多时候更希望在配置文件中配置Gateway Filter,所以可以自定义过滤器工厂实现。
自定义过滤器工厂需要继承AbstractGatewayFilterFactory
在application.yml配置使用
自定义Global Filter
实现自定义全局过滤器需要继承GlobalFilter和Ordered
使用它只需要加上@Component注解。
领取专属 10元无门槛券
私享最新 技术干货