美文网首页
三十、请求拦截器

三十、请求拦截器

作者: 那钱有着落吗 | 来源:发表于2020-12-02 09:11 被阅读0次

我们可以新建一个拦截器,然后在mvc中添加这个拦截器,就可以达到拦截请求的功能了。


public class UserTokenInterceptor implements HandlerInterceptor {

    /**
     * 拦截请求,在访问controller之前
     * @param request
     * @param response
     * @param handler
     * @return
     * @throws Exception
     */
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        /**
         * false 请求被拦截,被驳回,验证出现问题
         * true 请求在经过验证校验以后,是ok的,是可以放行的
         */
        return false;
    }

    /**
     * 请求访问controller之后,渲染视图之前
     * @param request
     * @param response
     * @param handler
     * @param modelAndView
     * @throws Exception
     */
    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {

    }

    /**
     * 请求访问controller之后,渲染视图之后
     * @param request
     * @param response
     * @param handler
     * @throws Exception
     */
    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {

    }
}


    // 实现静态资源的映射
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/**")
                .addResourceLocations("classpath:/META-INF/resources/")  // 映射swagger2
                .addResourceLocations("file:/workspaces/images/");  // 映射本地静态资源
    }

    @Bean
    public RestTemplate restTemplate(RestTemplateBuilder builder) {
        return builder.build();
    }

    @Bean
    public UserTokenInterceptor userTokenInterceptor() {
        return new UserTokenInterceptor();
    }


    @Override
    public void addInterceptors(InterceptorRegistry registry){
        registry.addInterceptor(userTokenInterceptor())
                .addPathPatterns("/hello");
        WebMvcConfigurer.super.addInterceptors(registry);
    }

如果不需要拦截,可以在拦截器里面做好配置


image.png

相关文章

  • 三十、请求拦截器

    我们可以新建一个拦截器,然后在mvc中添加这个拦截器,就可以达到拦截请求的功能了。 如果不需要拦截,可以在拦截器里...

  • OkHttp封装网络请求

    请求日志拦截器 请求头拦截器

  • 请求拦截器 与 响应拦截器(React)

    前提: 请求拦截器和响应拦截器主要应用场景:请求网络接口请求拦截器:发送请求的时候,携带一些信息响应拦截器:接收到...

  • 请求拦截器 与 响应拦截器(Vue)

    前提: 请求拦截器和响应拦截器主要应用场景:请求网络接口请求拦截器:发送请求的时候,携带一些信息响应拦截器:接收到...

  • Retrofit2.0的进阶使用-拦截器

    1 请求头拦截器 2 打印请求信息拦截器

  • axios安装与基本配置

    安装:$npm install axios --save get请求: post请求: 请求拦截器和响应拦截器

  • vue之axios篇 request拦截器的使用

    axios里面可以设置拦截器 ,可以在我们正式请求发送之前做一些事情拦截器分请求拦截器和响应拦截器首先我们看下请求...

  • axios 请求拦截器&响应拦截器

    一、 拦截器介绍 一般在使用axios时,会用到拦截器的功能,一般分为两种:请求拦截器、响应拦截器。 请求拦截器在...

  • axios--拦截器(1)

    关于axios的拦截器是一个作用非常大,非常好用的东西。分为请求拦截器和响应拦截器两种。 请求拦截器响应拦截器 我...

  • 实现拦截器功能

    1.拦截器概述 什么是拦截器? 拦截器主要用于拦截用户请求并作相应的处理。例如通过拦截器可以进行权限验证、记录请求...

网友评论

      本文标题:三十、请求拦截器

      本文链接:https://www.haomeiwen.com/subject/ioifiktx.html