news 2026/6/15 11:19:01

1.跨域请求是什么?有什么问题?怎么解决?面试题例子\springboot例子\springboot-mybatis

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
1.跨域请求是什么?有什么问题?怎么解决?面试题例子\springboot例子\springboot-mybatis

面试题例子\springboot例子\springboot-mybatis

  • 什么是跨域

当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域

  • 为什么会出现跨域问题

出于浏览器的同源策略限制。同源策略(Sameoriginpolicy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。同源策略会阻止一个域的javascript脚本和另外一个域的内容进行交互。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(host)和端口号(port)

当前页面url

被请求页面url

是否跨域

原因

http://www.test.com/

http://www.test.com/index.html

同源(协议、域名、端口号相同)

http://www.test.com/

https://www.test.com/index.html

跨域

协议不同(http/https)

http://www.test.com/

http://www.baidu.com/

跨域

主域名不同(test/baidu)

http://www.test.com/

http://blog.test.com/

跨域

子域名不同(www/blog)

http://www.test.com:8080/

http://www.test.com:7001/

跨域

端口号不同(8080/7001)

  • Springboot 解决跨域

CorsConfig

import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.CorsRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { // 设置允许跨域的路径 registry.addMapping("/**") // 设置允许跨域请求的域名 .allowedOriginPatterns("*") // 是否允许cookie .allowCredentials(true) // 设置允许的请求方式 .allowedMethods("GET", "POST", "DELETE", "PUT") // 设置允许的header属性 .allowedHeaders("*") // 跨域允许时间 .maxAge(3600); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 23:55:54

强化学习系统测试:奖励函数设计陷阱

被忽视的奖励函数危机 在强化学习(RL)系统测试中,奖励函数常被视为“黑盒组件”。2025年DeepMind事故分析报告显示,73%的RL系统失效源于奖励设计缺陷,而非算法实现错误。本文从测试视角解剖三大设计陷阱,提…

作者头像 李华
网站建设 2026/6/13 1:36:22

AI在性能测试中的应用:预测负载模式的机制与实践

1 负载预测:性能测试的范式革命 传统性能测试依赖人工设计负载模型,存在三大痛点: 场景失真:静态脚本无法模拟真实用户行为波动 资源浪费:过度测试占比超60%(Gartner 2025) 响应滞后&#xf…

作者头像 李华
网站建设 2026/6/9 18:19:42

C#代码示例:如何在网页上实现机械制造行业的大文件秒传?

文件管理系统毕业设计:从IE8兼容到百万梦想的奇幻漂流 大家好,我就是那个被IE8折磨到怀疑人生的通讯专业大三狗。本来以为做个文件管理系统毕业设计撑死两周搞定,没想到这项目直接让我体验了一把"全栈工程师"的酸爽人生。 需求分…

作者头像 李华
网站建设 2026/6/10 18:56:49

ROS2开发

ROS 2(Robot Operating System 2)是用于机器人开发的灵活框架,相较于 ROS 1,它在实时性、安全性、跨平台支持和分布式通信等方面有显著提升。以下是一个 ROS 2 开发的快速入门指南,适用于初学者或希望系统化学习的人。…

作者头像 李华
网站建设 2026/6/6 1:32:14

.NET MVC中如何支持工程建筑行业的大文件夹上传与目录结构?

介绍 在Web 程序中上传文件是很常见的需求。利用HTTP 协议上传文件的方式非常有限,最常见的莫过于使用 元素进行上传。这种上传方式会将内容使用multipart/form-data 方案进行编码,并将内容POST 到服务器端。使用multipart/form-data 编码方式与默认的a…

作者头像 李华