在spring boot+vue项目中@CrossOrigin 配置了允许跨域但是依然报错跨域,解决跨域请求的一次残酷经历

首先,说一下我们的项目情况,我们项目中后端有一个过滤器,如果必须要登录的接口路径会被拦下来检查,前端要传一个token,然后后端根据这个token来判断redis中这个用户是否已经登录。

复制代码
        if (request.getMethod().equals("OPTIONS")){
            System.out.println(request.getMethod());
            filterChain.doFilter(request, response);
            return;
        }

前端报错,我一看哎跨域问题,于是后端配置允许跨域各种配置都不好使,问题排查OPTIONS请求不能带自定义token所有后端拦下来请求以后拿不到token,后端拿不到token就直接重定向到错误处理接口然后返回从错误处理接口中返回具体的错误情况,

解决办法,判断token之前如果OPTIONS请求直接放行

相关推荐
倔强的石头_4 小时前
WorkBuddy 上手实战:打造一个可用的本地 AI 工作台
后端
苍何9 小时前
Coding 真有质的飞跃?实测下豆包seed 2.1 pro
后端
苍何9 小时前
试了下腾讯 Marvis,回不去了...
后端
caibixyy9 小时前
springboot+langchain4j 实战 Day14——工具嵌入多 Agent(Tool-Equipped Multi-Agent)
后端
caibixyy9 小时前
springboot+langchain4j 实战 Day13 多 Agent 协作(Router + 子 Agent 分流)
后端
飘尘9 小时前
前端转全栈(Java 后端)必须要知道的:开发中的锁机制与分布式并发控制
前端·后端·全栈
苍何9 小时前
清华团队做了个具身智能大脑,有点东西!
后端
fliter9 小时前
强类型的诅咒,还是 Rust 类型系统的生存指南
后端
前端切图崽_小郭9 小时前
虚拟滚动:静态 vs 动态的核心差异与实现?
vue.js