SpringBoot中配置拦截器时,跨域失效

前后段分离的项目,配置了跨域后,访问正常,但是配置了拦截器以后,有的访问正常,有的出现跨域问题,发现出现跨域问题的都是拦截器里面没有放行的请求。

@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {static final String ORIGINS[] = new String[] { "GET", "POST", "PUT", "DELETE" };
//这是最初跨域的配置,但是在拦截器里面失效了。用下面的方法就会得到解决,这里就注释掉了。//@Override//public void addCorsMappings(CorsRegistry registry) {//registry.addMapping("/**").allowedOrigins("*").allowCredentials(true).allowedMethods(ORIGINS)//          .maxAge(3600).allowedHeaders("*").exposedHeaders("access-control-allow-headers",//          "access-control-allow-methods",//        "access-control-allow-origin",//      "access-control-max-age",//    "X-Frame-Options", JwtUtils.TOKEN_HEADER);}//改用过滤器CorsFilter 来配置跨域,由于Filter的位置是在Interceptor之前的,问题得到解决@Beanpublic CorsFilter corsFilter() {CorsConfiguration config = new CorsConfiguration();// 设置允许跨域请求的域名config.addAllowedOrigin("*");// 是否允许证书 不再默认开启// config.setAllowCredentials(true);// 设置允许的方法config.addAllowedMethod("*");// 允许任何头config.addAllowedHeader("*");config.addExposedHeader("token");UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();configSource.registerCorsConfiguration("/**", config);return new CorsFilter(configSource);}@Beanpublic JwtInterceptor getJwtInterceptor() {return new JwtInterceptor();}//配置拦截器@Overridepublic void addInterceptors(InterceptorRegistry registry) {System.out.println("我是拦截器。。。。。");registry.addInterceptor(getJwtInterceptor()).excludePathPatterns("/login");}}

最后使用了CorsFilter 来配置跨域,问题就得到了解决。

SpringBoot中配置拦截器时,跨域失效相关推荐

  1. springboot中通过cors协议解决跨域问题

    2019独角兽企业重金招聘Python工程师标准>>> 1.对于前后端分离的项目来说,如果前端项目与后端项目部署在两个不同的域下,那么势必会引起跨域问题的出现. 针对跨域问题,我们可 ...

  2. 【springboot中使用拦截器】

    1.拦截器原理 1.定义拦截器: 2.配置拦截器 3.解决静态资源被拦截 2.拦截器使用实例 2.1判断用户有没有登录 2.2取消拦截操作 1.拦截器原理 拦截器的原理很简单,是AOP 的一种实现,专 ...

  3. SpringBoot2.x 中配置拦截器

    拦截器 拦截器介绍 拦截器开发 开发拦截器 MyInterceptor 开发控制器 HelloController 配置拦截器 InterceptorConfig 运行 SpringBoot 知识点目 ...

  4. Springboot 中配置拦截器之后突然出现No mapping for GET xxxx

    在使用拦截器时,在配置拦截器的时候,由于在 Spring Boot 2.0 之前,我们都是直接继承 WebMvcConfigurerAdapter 类,然后重写 addInterceptors 方法来 ...

  5. springboot中的拦截器interceptor和过滤器filter,多次获取request参数

    大家好,我是烤鸭:     这是一篇关于springboot的拦截器(interceptor)和过滤器(Filter). 先说一下过滤器和拦截器. 区别: 1. servlet请求,顺序:Filter ...

  6. SpringBoot中使用拦截器、servlet、过滤器Filter

    Spring Boot 使用拦截器步骤: 1. 创建类实现 HandlerInterceptor 接口 package com.dongmu.interceptor;import org.spring ...

  7. SpringBoot中自定义拦截器

    场景 自定义拦截器,通过继承WebMvcConfigureAdapter然后重写父类中的方法进行扩展. 项目搭建专栏: https://blog.csdn.net/BADAO_LIUMANG_QIZH ...

  8. 如何快速在 Springboot 中集成拦截器? | 原力计划

    作者 | 才疏学浅 责编 | 夕颜 出品 | CSDN(ID:CSDNnews) 话不多说,直接上货! 拦截器的作用 拦截器提供了一种机制,在访问action前后进行一些操作,因为拦截器的这个特性,那 ...

  9. Springboot整合Shiro前后端分离跨域问题

    Springboot整合Shiro前后端分离跨域问题 前言:SpringBoot整合shiro进行前后端分离开发时(前端是Vue),项目做了跨域配置,但还是前端请求会出现cros err–显示的跨域问 ...

最新文章

  1. tensorflow2.0 基础一 常用数据类型及转换
  2. 纯CSS3制作的圆角效果按钮菜单
  3. 档案中级职称计算机需要考几个模块,2020年职称申报需要准备哪些档案资料?这些细节必须知道!...
  4. sklearn 图片相似
  5. 如何按 value 对 dictionary 进行排序?
  6. CTS ( 9)---CTS 源码分析
  7. 养成10个优秀的习惯
  8. VS2015 property manager
  9. 如何打开python3.7.4_Python3.7.4入门-5输入输出
  10. 计算机三级数据库技术笔记
  11. singleTask和startActivityResult
  12. 【转】中华吸血鬼分析
  13. html选择日期选择器
  14. 扫描仪 无线 打印服务器,树莓派搭建网络打印机 扫描仪服务器
  15. centos7下载busybox
  16. 一文了解知识图谱能做什么、本文含Jiagu自然语言处理工具试用、知识图谱实战。
  17. 局域网即时通讯软件_无线局域网中,安卓手机和电脑的资源如何实现互传互访?...
  18. json parser类的使用
  19. 玩转NVIDIA Jetson AGX Xavier(3)--- 使用JetPack 4.1为Xavier刷机
  20. Vue导入上传Excel

热门文章

  1. 渲染TA实战:冰面效果制作分享
  2. linux文件系统lv是什么意思,Linux LVM系列(二)lv缩容
  3. python星星万花筒_少儿编程分享:码趣君教你用Python编写推星星游戏(完)
  4. 关于django模型语法里面的一些坑。系统报错:Unknown command: 'validate' Type 'manage.py help' for usage.
  5. Google地图获取城市名称
  6. 4年测试经验去面试10分钟就被pass,测试现在要求这么高了?
  7. 大盘指数是什么意思?
  8. EO.Web浏览器 v2023.0.18.0 for .NET -- EO.WebBrowser
  9. 一文让你搞懂什么是Redis集群
  10. 2022-2028全球对叔辛基苯酚行业调研及趋势分析报告