场景

之所以会跨域,是因为受到了同源策略的限制,同源策略要求源相同才能正常进行通信,即协议、域名、端口号都完全一致。

浏览器出于安全的考虑,使用 XMLHttpRequest对象发起 HTTP请求时必须遵守同源策略,否则就是跨域的HTTP请求,默认情况下是被禁止的。换句话说,浏览器安全的基石是同源策略。

在使用SpringBoot写的后台接口,再通过js进行请求时提示跨域问题,但是直接在浏览器中请求或者使用postman请求是没有问题的。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

在SpringBoot项目中只需要编写一个配置类使其实现WebMvcConfigurer接口并重写其addCorsMappings方法即可。

代码如下

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

然后在重写的方法中设置允许跨域访问的路径和域名以及允许发方法和header等,这里是设置的允许所有。

SpringBoot中通过重写WebMvcConfigurer的addCorsMapping方法实现后台服务解决跨域问题相关推荐

  1. SpringBoot中通过重写WebMvcConfigurer的方法配置静态资源映射实现图片上传后返回网络Url

    场景 前端调用上传照片的功能,将某照片上传到服务器上某磁盘路径下,然后将通过静态资源映射,将在服务器上 访问的地址存储到数据库中,这样在需要获取这种照片的时候就能通过服务器上的url来获取和显示这张照 ...

  2. Springboot 利用CORS 解决跨域问题

    什么是跨域 首先我们先用springboot 建立1个简单的API, 它返回1个json package com.example.demo_api_cors.controller;import com ...

  3. 【SpringBoot】面试必杀技-泰山陨石坠,SpringBoot中主启动类的run方法启动流程是什么?

    开头导语由Chatgpt完成 当今互联网行业中,Java后端开发岗位的竞争异常激烈,对于面试者来说,掌握一些技巧和知识点将有助于脱颖而出.而对于SpringBoot框架的使用和运行机制,更是Java后 ...

  4. 继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错? springboot 两种方式稳定解决跨域问题

    继承WebMvcConfigurer 和 WebMvcConfigurerAdapter类依然CORS报错???springboot 两种方式稳定解决跨域问题! 之前我写了一篇文章,来解决CORS报错 ...

  5. Springboot第二篇:与前端fetch通信(附springboot解决跨域方法)

    说到与前端通信,明白人都知道这章肯定会写两部分的东西啦. 关于后台 ①首先回顾前文,上一章环境搭建如图: ②我们在maven.example.controller下添加一个文件,并附上如图代码: ③: ...

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

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

  7. cors跨域_Spring Boot 中通过 CORS 解决跨域问题

    (给ImportNew加星标,提高Java技能) 转自:江南一点雨 今天和小伙伴们来聊一聊通过CORS解决跨域问题. 同源策略 很多人对跨域有一种误解,以为这是前端的事,和后端没关系,其实不是这样的, ...

  8. SpringBoot解决跨域的5种方式

    本文来说下SpringBoot中实现跨域的5种方式. 文章目录 什么是跨域 java解决CORS跨域请求的方式 返回新的CorsFilter(全局跨域) 重写WebMvcConfigurer(全局跨域 ...

  9. springboot项目解决跨域的几种方式

    跨域资源共享(CORS):通过修改Http协议header的方式,实现跨域.说的简单点就是,通过设置HTTP的响应头信息,告知浏览器哪些情况在不符合同源策略的条件下也可以跨域访问,浏览器通过解析Htt ...

最新文章

  1. 国内第一部IT治理综合图书问世
  2. LFCS 系列第二讲:如何安装和使用纯文本编辑器 vi/vim
  3. jQuery.validate使用必备
  4. qt 实现html 编辑器,基于QT的HTML编辑器的设计与实现.doc
  5. cobertura 使用_使用Cobertura,JUnit,HSQLDB,JPA涵盖您的测试
  6. 【付出总有回报】广州广汕公路科目三路考通过!小结供大家参考
  7. 一行代码添加P值的可视化技巧分享~~
  8. Linux——cmake使用示例与整理总结
  9. GitHub Action 有风险?!
  10. POJ-3273(二分)
  11. JDK动态代理与CGLIB的区别
  12. 嵩天《Python数据分析与展示》实例3:Matplotlib基础图表绘制
  13. 五笔字根表识别码图_五笔字根识别码学习
  14. 下载NVIDIA官方驱动教程
  15. [NOIP模拟测试34]反思+题解
  16. 华为计算机网络认证软件,华为认证入门计算机网络基础
  17. 不同需求下,CPU怎么选?
  18. 【与GPT对话】杂记
  19. Lyx的安装流程(windows10系统)及配置中文环境
  20. 交易系统处理性能关键指标

热门文章

  1. rs232 python_利用python发出rs232信号
  2. scratch跳一跳游戏脚本_超级丛林跳游戏下载-超级丛林跳最新版下载v1.01.5026 安卓版...
  3. 怎么通俗的理解Netty呢?
  4. JQuery选择器 属性值 等于 以开头 以结尾 元素选择
  5. Redis支持的数据类型以及使用场景,持久化,哨兵机制,缓存击穿,缓存穿透
  6. Linux下安装RabbitMQ
  7. Linux中查看正在使用的端口并强制删除占用端口
  8. linux查找乱码文件,linux删除乱码文件或文件夹
  9. c语言用户输入编程,C语言入门教程-Printf:读取用户输入
  10. python 指针_python的指针