前后端分离项目跨域请求的问题与解决办法

目录

一、为什么会存在跨域请求?

二、跨域请求的流程?

三、什么情况下会触发CROS机制?

四、如何解决跨域请求导致的问题?


一、为什么会存在跨域请求?

跨域请求是因为浏览器的同源策略引起的。同源策略是浏览器的一种安全策略,用于保护用户数据和减少潜在的安全风险,安全:浏览器只允许加载本域下面的资源(本域:协议、域名、端口)

二、跨域请求的流程?

当进行跨域请求的时候,浏览器先发送一个大头兵请求(也就是预检请求OPTTIONS,携带着真实请求的信息,包括请求方法、数据等),用于询问服务端中是否支持这个跨域请求,如果这个请求被允许,那么客户端发送真实请求(可通过打断点看具体过程

三、什么情况下会触发CROS机制?

你发送的这个请求可能会对服务器的数据产生副作用,意思就是写操作。
GET以外的请求都会触发CORS机制

四、如何解决跨域请求导致的问题?

使用cors头部,在服务器端中配置cors头部,允许指定的域名或者所有域名访问资源,可以设置允许的源,这是对全局的一个设置


@Configuration
public class WebMvcConfig implements WebMvcConfigurer {@Override  //进行请求的配置public void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**") // 匹配所有路径,/*是不包含子路径,/**包含父路径和子路径.allowedHeaders("*")  // 任意的请求头.allowedOrigins("*")  // 任意域名.allowedMethods("GET","POST","PUT","DELETE","OPTIONS")  // 允许这些请求进行一个跨域的请求.maxAge(3600);}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/160065.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

算法刷题-动态规划2

算法刷题-动态规划2 珠宝的最高价值下降路径最小和 珠宝的最高价值 题目 大佬思路 多开一行使得代码更加的简洁 移动到右侧和下侧 dp[ i ][ j ]有两种情况: 第一种是从上面来的礼物最大价值:dp[ i ][ j ] dp[ i - 1 ][ j ] g[ i ][ j ] 第二种是从左…

10.10-11 科研记录 一些多模态工作的相关思考

论文出发点很简单,第一,就是想要去除文本的冗余数据,有多篇文章也提到了,冗余文本影响对下游任务的性能,大量无关的文本输入到大模型也会影响大模型的性能,本质也很好理解,就是尽可能去除与任务…

握住音乐的法宝 - 简谱

简谱是音乐学习中至关重要的记谱法。除了简谱,还有吉他和钢琴的五线谱,以及我最喜欢的古琴减字谱等其他记谱方式。如果你对音乐感兴趣,一起学习吧,我不允许你是一个文盲。 一、调拍号 “1C 4/4”即为调拍号,调拍号分…

opencv-直方图均衡化

直方图均衡化是一种用于增强图像对比度的图像处理技术。它通过调整图像的灰度级别分布,使得图像中各个灰度级别的像素分布更均匀,从而提高图像的对比度。 在OpenCV中,你可以使用cv2.equalizeHist()函数来进行直方图均衡化。 以下是一个简单…

opencv-2D直方图

cv2.calcHist() 是 OpenCV 中用于计算直方图的函数。它可以计算一维或多维直方图,用于分析图像中像素值的分布。 基本的语法如下: hist cv2.calcHist(images, channels, mask, histSize, ranges[, hist[, accumulate]])参数说明: images:…

[点云分割] 条件欧氏聚类分割

介绍 条件欧氏聚类分割是一种基于欧氏距离和条件限制的点云分割方法。它通过计算点云中点与点之间的欧氏距离,并结合一定的条件限制来将点云分割成不同的区域或聚类。 在条件欧氏聚类分割中,通常会定义以下两个条件来判断两个点是否属于同一个聚类&…

Java继承中的属性名相同但是类型不同的情况

如果子类出现一个属性与父类的属性名一样,那么父类的属性将会被隐藏(java官方文档) 在继承当中,子类继承父类的属性和继承方法的方式上有所差别: 父类属性不可被重写,只会被调用,父类方法可以被重写,也可以被调用 当子类中存在和父类同名属性,父类属性会隐藏起来,在多态的情…

利用Python进行数据分析【送书第六期:文末送书】

👨‍🎓博主简介 🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊交流社区:运维交流社区 欢迎大家的加入! 🐋 希望大家多多支…

vue实现爱心形状的复选框

目录 HTML代码: CSS代码: Vue代码: 这个例子使用了CSS来创建一个爱心形状的复选框,并使用Vue来控制其选中状态。点击复选框时,将调用toggleChecked方法来切换checked属性的值,以控制复选框的状态。 以下…

7.vue3项目(七):品牌管理页面的增删改查

目录 1.静态页面 2.查询功能实现 (1)设置出参入参类型 (2)编写查询接口

SpringBoot——》配置logback日志文件

推荐链接: 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

目标检测原理

一、什么是目标检测 目标检测的任务是找出图像中所有感兴趣的目标(物体),确定他们的类别和位置,是计算机视觉领域的核心问题之一。由于各类物体有不同的外观、形状、姿态,再加上光照、遮挡等因素的干扰,目…

Spring Framework 6.1 正式发布

Spring Framework 6.1.0 现已从 Maven Central 正式发布!6.1 一代有几个关键主题: 拥抱 JDK 21 LTS虚拟线程(Project Loom)JVM 检查点恢复(项目 CRaC)重新审视资源生命周期管理重新审视数据绑定和验证新的…

LeetCode207.课程表

看完题我就想,这不就是进程里面的死锁问题嘛,进程1等进程2释放锁,进程2等进程3释放锁,进程3等进程1释放锁,这就造成了死锁。或者是spring中的循环依赖问题,BeanA的初始化需要初始化一个BeanB,Be…

CAN-bus 规范 V2.0

目录 CAN-bus 规范 V2.0 版本 引言 1.介绍 2.基本概念 3.报文传输 3.1 帧类型 3.1.1 数据帧 帧起始 仲裁场 控制场 应答场 帧结尾 4.报文校验 5.编码 6.错误处理 6.1 错误检测 7.故障界定 8.位定时要求 9 、增加 CAN 振荡器容差 9.1 、协议修改 CA…

微信将电脑的聊天记录导入手机的方法(win 和 Mac)

categories: [Tips] tags: WeChat MacOS Tips 写在前面 最近有个需求, 就是把存放在 win 上的微信聊天记录导入手机, PC 端的聊天记录大概有 28GB, 其实直接用微信的自带功能就行, 但是因为存放路径等的多种区别, 导致折腾起来还要费点事… win: win10, 4GB 运行内存(导致导入…

Instant Web API .Net Core Crack

Instant Web API .Net Core 是立即构建即时数据库 Web API,无需编码。在几分钟内生成您的 Web API,以更快地构建应用程序。使用 VS 2022 和 Entity Framework Core 为任何 MS SQL 数据库生成 Web API。 新功能 - 使用 Visual Studio 2022 为 PostgreSQL …

软件设计开发技术的演进

一、演进历史 1950 面向机器编程:基于图灵机模型的计算机,机器语言与汇编语言 1960 函数式编程:Lisp语言,以lamda演算为理论基础的编程语言 1966 过程化编程:取消goto,结构化编程,流程图建模…

数字游戏

题目描述 小 K 同学向小 P 同学发送了一个长度为 8 的 01 字符串 来玩数字游戏,小 P 同学想要知道字符串中究竟有多少个 1。 注意:01 字符串为每一个字符是 0 或者 1 的字符串,如“101”(不含双引号)为一个长度为 3 …

Thread线程启动的多种方式

启动线程一共有三种方法:继承类,实现接口,匿名内部类。但是 可以有多种的写法 第一种:匿名内部类 Thread thread = new Thread(new Runnable() {@Overridepublic void run() {System