后端配置文件:

@Configuration
public class WebAppConfiguration implements WebMvcConfigurer {/*** 解决跨域问题**/@Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**")// 设置允许跨域请求的域名.allowedOrigins("*")// 是否允许证书.allowCredentials(true)// 设置允许的方法.allowedMethods("GET", "POST", "DELETE", "PUT", "OPTIONS", "HEAD", "PATCH")// 设置允许的header属性.allowedHeaders("*")// 跨域允许时间.maxAge(3600);}}

跨域报错:我的接口中用到的参数是HttpServletRequest对象,这个对象容易获得,所以不存参数问题,所以后端接口是可以直接访问的,但是在这个接口中我用HttpServletRequest对象在获取Cookie时出现了问题,因为在前端setCookie没有成功,导致这里一直没有获取到cookie,数据返回一直为null,而访问其他接口时又用到这个数据,导致其他接口出现如上Access-Control-Allow-Origin错误。

解决办法:在过滤器中添加以下方法便可以成功解决,注意Access-Control-Allow-Origin不要设置为*,设置为*有可能还是会提示跨域

@Component
public class AuthFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) throws ServletException {}@Overridepublic void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException {HttpServletRequest request = (HttpServletRequest) req;HttpServletResponse response = (HttpServletResponse) resp;response.addHeader("Access-Control-Allow-Origin", request.getHeader("origin"));response.addHeader("Access-Control-Allow-Credentials", "true");chain.doFilter(request, response);}@Overridepublic void destroy() {}}

那么使用GET方法确实是不跨域了,但是在使用POST提交数据的时候,发现前端又提示跨域,实际上现在就简单了,前端有一个组件QS,前端在发送请求的时候 使用qs包装一下请求参数;

axios.post("/api", qs.stringify({name: "ALin",id: "666"})).then(res => {})

参考文档:写了Access-Control-Allow-Origin,还报跨域错误解决过程 | 码农家园

已解决:axios get请求不跨域,post请求跨域了_阿林阿林的博客-CSDN博客_get不跨域 但post跨域

后端配置了跨域配置前端访问还是提示跨域相关推荐

  1. 我也说说Nginx解决前端跨域问题,正确的Nginx跨域配置(后端Nginx CORS跨域配置、CORS设置,后端允许跨域请求)

    最近连续两个朋友问我跨域相关问题,我猜想可能不少朋友也遇到类似问题,我打算写个博客聊一下我实际使用的配置, 先说明一下,我并不太了解这配置,没精力去了解太多,但我觉得其中有一些关键的小注意点,可能有些 ...

  2. Vue+Flask前后端分离 Vue3跨域配置

    Vue+Flask前后端分离 Vue3跨域配置 前端端口号为8080 后端端口号为5000 问题描述 问题解决 接口路径映射 前端端口号为8080 后端端口号为5000 后端端口API 代码片. @a ...

  3. nginx解决浏览器跨域问题_Nginx解决前端跨域问题 CORS跨域配置

    最近连续两个朋友问我跨域相关问题,我猜想可能不少朋友也遇到类似问题,我打算写个博客聊一下我实际使用的配置, 先说明一下,我并不太了解这配置,没精力去了解太多,但我觉得其中有一些关键的小注意点,可能有些 ...

  4. html 跨域_常见跨域解决方案以及Ocelot 跨域配置

    常见跨域解决方案以及Ocelot 跨域配置 Intro 我们在使用前后端分离的模式进行开发的时候,如果前端项目和api项目不是一个域名下往往会有跨域问题.今天来介绍一下我们在Ocelot网关配置的跨域 ...

  5. 前后端完全分离出现跨域、无法访问后台解决方案

    系统为分布式,主体上分为三层,前端.服务消费端.服务提供端,前端代码记录后端服务器访问地址,由于后端服务不提供外网服务,故用户直接访问出现无法访问情况,但是前端服务器与后端服务器直接是互联互通的,所以 ...

  6. springboot 跨域配置cors

    撸了今年阿里.头条和美团的面试,我有一个重要发现.......>>> 1 跨域的理解 跨域是指:浏览器A从服务器B获取的静态资源,包括Html.Css.Js,然后在Js中通过Ajax ...

  7. 常见跨域解决方案以及Ocelot 跨域配置

    常见跨域解决方案以及Ocelot 跨域配置 Intro 我们在使用前后端分离的模式进行开发的时候,如果前端项目和api项目不是一个域名下往往会有跨域问题.今天来介绍一下我们在Ocelot网关配置的跨域 ...

  8. 入门Nginx之-静态资源服务器及跨域配置

    简介 这里静态资源就以之前的一个项目文章地址为例,源码 Github,项目本身很简单,只是分别对第三方的服务端.自己的服务端发起请求. 不论是调用第三方服务端接口,还是自己的后端服务,如果跨域未在服务 ...

  9. nginx 实现备案域名的配置 + 跨域配置

    前言 又到了记录的时候,摸鱼一时爽,摸到火葬场,摸鱼有风险,不要摸鱼了!!! (对自己的不满) ying宝的课上讲到了负载均衡.分布式缓存.分库分表等等等等提高服务并发性能的方法,总而言之,都是一些提 ...

最新文章

  1. Datawhale赛事大满贯来了!
  2. leetcode 677. Map Sum Pairs | 677. 键值映射(Trie前缀树,BFS)
  3. java 基本类型 引用类型_Java中的基本类型和引用类型变量的区别
  4. pytorch实现Dropout与正则化防止过拟合
  5. 04737 c++ 自学考试2019版 第二章课后程序设计题 2
  6. 在高并发环境下Reids做缓存踩坑记录
  7. CCNA学习指南 第七章 下载
  8. android学习资料整理-----高级篇
  9. 【报告分享】 百度2021国潮骄傲搜索大数据报告-百度x人民网(附下载)
  10. 记录---第一次写博客
  11. pdsh@xxxx: localhost: connect: Connection refused
  12. SSM_JSON格式增删改查
  13. 【机器学习实战笔记】Logistic回归
  14. 如何修改 gitlab 的项目名称
  15. godaddy 服务器位置,GoDaddy DNS服务器地址 | Godaddy美国主机中文指南
  16. Java序列化与注解面试题
  17. android轮播图简单实现(左右无限滑动,自动轮播)
  18. 接入高防后出现502怎么办?
  19. linux磁盘挂载方式mount
  20. JavaWeb学习之BS/CS架构及tomcat容器项目部署

热门文章

  1. Java IO流笔记
  2. java做flv直播服务器_一种RTMP直播流到HTTPFLV直播流实时转换系统及其工作方法与流程...
  3. Jni 内存泄露(Failed adding to JNI pinned array ref table (1024 entries))
  4. 获取application.yml配置文件中配置的对象集合
  5. 【约稿】给自己交一份年度总结——我的2014年
  6. nserror 自定义错误_NSError错误code对照表
  7. mysql对网站seo的作用_友情链接对于网站SEO的作用有哪些
  8. 刘源谷俊山黑龙江八一农垦大学教务网络管理系统
  9. 计算机控制讲的是什么意思啊,计算机控制_计算机控制是什么
  10. asp空间如何判断jmail组件已经安装?是否支持呢?