跨域资源共享(CORS)是前后端分离项目很常见的问题,本文主要介绍当SpringBoot应用整合SpringSecurity以后如何解决该问题。

01 什么是跨域问题?

CORS全称Cross-Origin Resource Sharing,意为跨域资源共享。当一个资源去访问另一个不同域名或者同域名不同端口的资源时,就会发出跨域请求。如果此时另一个资源不允许其进行跨域资源访问,那么访问的那个资源就会遇到跨域问题。

02 跨域问题演示及解决

我们使用mall项目的源代码来演示一下跨域问题。此时前端代码运行在8090端口上,后端代码运行在8080端口上,由于其域名都是localhost,但是前端和后端运行端口不一致,此时前端访问后端接口时,就会产生跨域问题。

2.1 点击前端登录按钮

此时发现调用登录接口时出现跨域问题。

2.2 盖默认的CorsFilter来解决该问题

添加GlobalCorsConfig配置文件来允许跨域访问。

package com.macro.mall.config;iport org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframework.web.cors.UrlBasedCorsConfigurationSource;import org.springframework.web.filter.CorsFilter;/* * 全局跨域配置 * Created by macro on 2019/7/27. */@Configurationpublic class GlobalCorsConfig { ** * 允许跨域调用的过滤器 */ @Bean public CorsFilter corsFilter() { CorsConfiguration config = new CorsConfiguration(); //允许所有域名进行跨域调用 config.addAllowedOrigin("*"); //允许跨越发送cookie config.setAllowCredentials(true); //放行全部原始头信息 config.addAllowedHeader("*"); //允许所有请求方法跨域调用 config.addAllowedMethod("*"); UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); source.registerCorsConfiguration("/**

前后端分离项目如何部署_前后端分离项目,如何解决跨域问题?相关推荐

  1. nginx解决浏览器跨域问题_前端通过Nginx反向代理解决跨域问题

    在前面写的一篇文章SpringMVC解决跨域问题,我们探讨了什么是跨域问题以及SpringMVC怎么解决跨域问题,解决方式主要有如下三种方式: JSONP CORS WebSocket 可是这几种方式 ...

  2. js webpack 解决跨域问题_详解webpack-dev-server使用http-proxy解决跨域问题

    文档资料 Vue-cli proxyTable 解决开发环境的跨域问题--虽然这篇是写vue的,不过用在webpack-dev-server上也是一样的 http-proxy-middleware-- ...

  3. pringboot后端解决跨域问题

    pringboot后端解决跨域问题 目录结构: 只需要编写一个类,实现WebMvcConfigurer接口中的addCorsMappings方法即可: import org.springframewo ...

  4. 使用 Nginx 部署前后端分离项目,解决跨域问题

    前后端分离这个问题其实松哥和大家聊过很多了,上周松哥把自己的两个开源项目部署在服务器上以帮助大家可以快速在线预览(喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了 ...

  5. 前后端分离项目,如何解决跨域问题?

    跨域问题是前后端分离项目中非常常见的一个问题,举例来说,编程猫(codingmore)学习网站的前端服务跑在 8080 端口下,后端服务跑在 9002 端口下,那么前端在请求后端接口的时候就会出现跨域 ...

  6. 无需CORS,用nginx解决跨域问题,轻松实现低代码开发的前后端分离

    近年来,前后端分离已经成为中大型软件项目开发的最佳实践. 在技术层面,前后端分离指在同一个Web系统中,前端服务器和后端服务器采用不同的技术栈,利用标准的WebAPI完成协同工作.这种前后端分离的&q ...

  7. Vue flask前后端分离解决跨域

    Vue flask前后端分离解决跨域 安装axios 在项目目录下输入:npm install axios--save-dev 配置axios 在main.js中引入axios import axio ...

  8. 前后端分离,如何解决跨域问题

    前后端分离,如何解决跨域问题 跨域 1.Jsonp,只能使用get提交,传输数据量有限 2.CORS(Corss-origin resource sharing)跨域资源共享,支持post提交    ...

  9. 跨域详解!前后端分离解决跨域问题

    文章目录 一.为什么会出现跨域问题 二.什么是跨域 三.非同源限制 四.跨域问题的解决方式 Jsonp前后端配合 前端修改 后端修改 CORS 详解响应头 5. SpringBoot解决 [方式一]全 ...

最新文章

  1. 基于XFS的NAS数据恢复可以做了
  2. Linux 下ntpdate网络校时使用
  3. leetcode复习1
  4. spring mvc传值html页面,spring mvc向前台页面传值-ModelAndView
  5. Try Redis : Redis 入门教程
  6. Linux进阶之软件管理
  7. 怎么看铜皮属性_阻抗匹配怎么做 及阻抗匹配的作用。
  8. Unity3D实现按钮切换Panel的功能
  9. MyBatis的动态SQL详解nbsp;(转载)
  10. kafka topic:1_Topic️主题建模:超越令牌输出
  11. 2021Java春招,java求职简历模板下载
  12. 形式验证——学习笔记
  13. 科幻-奇幻小说TOP100
  14. hdu 2087 剪花布条 kmp小水
  15. 训练faster rcnn报错:KeyError:‘max_overlaps’
  16. 溢出部分用省略号表示
  17. ssdt函数索引号_获得SSDT函数名和索引号的代码
  18. emoji表情拾取器
  19. html前端静态网页项目模仿旅游和设计两类网站
  20. 兆骑科创高层次人才引进服务平台,创业大赛,云路演

热门文章

  1. 一个三流学校程序员的奋斗历程
  2. linux jps 命令
  3. Mybatis 在 IDEA 中使用 generator 逆向工程生成 pojo,mapper
  4. [51nod1773]A国的贸易
  5. python第九天(9-33)
  6. [剑指Offer] 25.复杂链表的复制
  7. 最长上升子序列 (LIS算法(nlong(n)))
  8. 保护视力,我写的一个定时提醒的小玩意。
  9. testng.xml文件配置
  10. Redis数据类型:字符串