欢迎参观我的博客,一个Vue 与 SpringBoot结合的产物:https://poetize.cn
- 博客:https://gitee.com/littledokey/poetize-vue2.git
- 聊天室:https://gitee.com/littledokey/poetize-im-vue3.git
- 后端:https://gitee.com/littledokey/poetize.git
- 七牛云登录/注册地址(文件服务器,CDN):https://s.qiniu.com/Mz6Z32
原文链接:https://poetize.cn/article?id=55
SpringBoot | 拦截机制
自上而下依次拦截
Filter > Interceptor > ControllerAdvice > Aspect > Controller
过滤器(Filter)
对请求/响应进行修改、判断等。一般用于过滤参数、登录权限验证、资源访问权限控制、敏感词汇过滤、字符编码转换。
可以拿到原始的Http请求与响应,拿不到请求的控制器和请求控制器中的方法的信息。
Spring的数据绑定是在过滤器之后执行的。
拦截器(Interceptor)
在SpringBoot应用程序中,参数的处理通常发生在拦截器之前。这是因为拦截器通常用于在请求进入控制器方法之前或之后执行某些操作。
可以拿到你请求的控制器和方法。
全局异常处理器(ControllerAdvice)
只是用于处理Controller层抛出的异常。