平昌县建设局网站,汉南做网站,seo在哪可以学,wordpress添加百度地图吗目录
简介
Zuul中的过滤器
过滤器的执行流程
使用过滤器
route过滤器的默认三种配置
路由到服务
路由到url地址
转发给自己
自定义过滤器 简介
Zuul是Netflix开源的微服务网关#xff0c;主要功能是路由转发和过滤器#xff0c;其原理也是一系列filters#xff0…目录
简介
Zuul中的过滤器
过滤器的执行流程
使用过滤器
route过滤器的默认三种配置
路由到服务
路由到url地址
转发给自己
自定义过滤器 简介
Zuul是Netflix开源的微服务网关主要功能是路由转发和过滤器其原理也是一系列filters这些filters可以帮我们实现以下功能
身份验证和安全性观察和监控动态路由负载均衡静态响应处理路由多样化
Zuul中的过滤器
Zuul一共有四种过滤器分别是pre在请求被路由之前调用可利用这种过滤器鉴权。选择微服务记录日志限流。route在将请求路由到微服务调用用于构建发送给微服务的请求并用httpclinet ( 或者ribbon )请求微服务。post在调用微服务执行后。可用于添加header记录日志将响应发给客户端。error在其他阶段发生错误是走此过滤器。
过滤器的执行流程 使用过滤器
route过滤器的默认三种配置
路由到服务
由RibbonRoutingFilter实现以下配置表示当匹配到/test/路径的请求就转发到test-service服务
zuul:routes:test:path: /test/**serviceId: test-service
路由到url地址
由SimpleHostRoutingFilter实现以下配置表示当拦截到/test/csdn请求时就转发到csdn去可以在只知道请求路径不知道服务时使用
zuul: routes:test:path: /test/csdnurl: https://www.csdn.net/
转发给自己
由SendForwardFilter实现url要以forward:开头表示该请求再次跳转到“/user” routes:test:path: /test/**url: forward: /user
自定义过滤器
自定义过滤器的使用场景非常广泛如鉴权、安全认证、灰度发布等场景都可以通过自定义过滤器实现
Configuration
public class TestFilter extends ZuulFilter {Overridepublic String filterType() {// 设置过滤类型 FilterConstants.PRE_TYPE FilterConstants.ERROR_TYPE FilterConstants.ROUTE_TYPE FilterConstants.POST_TYPEreturn null;}Overridepublic int filterOrder() {// 优先级 越小越优先执行return 0;}Overridepublic boolean shouldFilter() {// 是否需要过滤true为需要过滤这里可以加相应的判断条件return false;}Overridepublic Object run() throws ZuulException {// 具体要实现的业务逻辑return null;}
}