zoukankan      html  css  js  c++  java
  • spring boot配置springMVC拦截器

      spring boot通过配置springMVC拦截器

      配置拦截器比较简单, spring boot配置拦截器, 重写preHandle方法.

      1.配置拦截器:

     

    2重写方法

    这样就实现了拦截器.

      其中,在重写方法的逻辑中, 增加了一个注解,  这个注解的作用是:当方法头加上这个注解之后, 拦截器直接放行

    这里说一下3个方法:

    preHandle:预处理回调方法,实现处理器的预处理, 有返回值, true表示继续流程,  false表示中断流程,通过response产生响应

    postHandle:后处理回调方法,实现处理器的后处理

    afterCompletion:整个请求处理完成回调方法

    在方法头增加注解

    这样有一些对安全没必要太严格,  不需要校验token的接口就加上这个注解就可以.

    接下来 WebMvcConfigurationSupport 配置静态资源

     还有个addViewControllers的方法可以配置视图

    拦截器的实现还有一种方式:  WebRequestInterceptor, 这里说下他们的不同点, 具体的代码实现都差不多

    WebRequestInterceptor 的 preHandle  没有返回值, 方法参数中没有response, 获取request更方便, 不影响后续流程, .   也就是说WebRequestInterceptor 更针对处理请求, 比如预设参数等.

    HandlerInterceptor 的 preHandle  有返回值, 会影响到后续处理, 有response, 获取request相对会稍微多写点代码, 更注重业务处理, 比如12306可以判断是否售票时间内, 权限, 请求验签等等.

    例如本文的业务是校验token, 登录权限

    整体来说HandlerInterceptor的功能更强大, 但获取request相对代码会多点

  • 相关阅读:
    组件中的data为什么不是一个对象而是一个函数?
    v-if v-show 的区别 以及使用的场景
    前后端数据交互的方式有哪些?
    服务端渲染客户端渲染的区别
    按下www.baidu.com发生什么
    php-语言参考-类型3.2-未完待续
    php-安装与配置-未完待续2
    PHP-入门指引1
    php扩展开发-INI配置
    php扩展开发-全局变量
  • 原文地址:https://www.cnblogs.com/-xuzhankun/p/9110478.html
Copyright © 2011-2022 走看看