ZuulFilter

在服务网关中定义过滤器,只需要继承ZuulFilter抽象类,实现其定义的四个抽象函数,就可对请求进行拦截与过滤

过滤器两个功能:

  1. 路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础
  2. 过滤器功能则负责对请求的处理过程进行预干预,是实现请求校验、服务聚合等功能的基础

请求生命周期

  1. pre :在请求路由到目标之前执行。一般用于请求认证、负载均衡和日志记录
  2. route :在路由请求时候被调用,处理目标请求
  3. post :在route和error过滤器之后被调用,一般会在此步骤添加响应头、收集统计和性能数据等
  4. error :处理请求时发生错误时被调用

1748170-20190831224337853-252258819.png

第一阶段:pre类型的过滤器处理

第二个阶段:routing,路由请求转发阶段
    请求将会被routing类型过滤器处理,这里的具体处理内容就是将外部请求转发到具体服务实例上去的过程
    当服务实例将请求结果都返回之后,routing阶段完成

第三个阶段:post,此时请求将会被post类型的过滤器进行处理
    这些过滤器在处理的时候不仅可以获取到请求信息,还能获取到服务实例的返回信息,
    所以在post类型的过滤器中,我们可以对处理结果进行一些加工或转换等内容。

一个特殊的阶段:error,该阶段只有在上述三个阶段中发生异常的时候才会触发
    但是它的最后流向还是post类型的过滤器,因为它需要通过post过滤器将最终结果返回给请求客户端

转载于:https://www.cnblogs.com/loveer/p/11440857.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值