过滤器工厂,负责创建对应的filter
RouteToRequestUrlFilter : 从exchange入参中获取route,拼接出requestUrl,然后把这个requestUrl设置到exchange的属性
ReactiveLoadBalancerClientFilter :获取服务实例,然后从exchange中解析出uri,拼接出requestUrl,设置到属性
ForwardRoutingFilter : 转发路由网关过滤器。其根据 forward://
前缀( Scheme )过滤处理,将请求转发到当前网关实例本地接口。
WebClientHttpRoutingFilter
WebClientWriteResponseFilter ,与 WebClientHttpRoutingFilter 成对使用的网关过滤器。其将 WebClientWriteResponseFilter 请求后端 Http 服务的响应写回客户端。
1.从exchange属性中获取属性requestUrl
2.如果已经被路由过了,或者不是http ,https的请求,就直接进行剩下的filter过滤器操作
3.没有路由过,设置路由过的标识
4.从exchange中获取request,然后获取httpMethod
5.根据method和url,headers 构建出requestBodySpec
6.继续构建出headersSpec
7.发起对后端服务的请求,然后获取应答response, 构造结果状态码
8.继续执行其他的过滤器filter