解决后端跨域问题

目录

一、什么是跨域问题?

1、跨域问题的定义

2、举例

3、为什么会有跨域问题的存在?

二、解决跨域问题

1、新建配置类

2、编写代码

三、结语


一、什么是跨域问题?

1、跨域问题的定义

跨域问题(Cross-Origin Resource Sharing, CORS)是 Web 开发中常见的安全机制问题,主要发生在浏览器中。当浏览器从一个域名的网页向另一个域名的服务器发起请求时,如果这两个域名不同(协议、域名或端口不同),浏览器会阻止这种请求,这就是跨域问题。

2、举例

跨域是指浏览器从一个 源(Origin) 向另一个 源 发起请求时,如果这两个源不同,就称为跨域。源由以下三部分组成:

  1. 协议 (如 http 或 https)
  2. 域名 (如 example.com)
  3. 端口 (如 8080)

如果协议、域名或端口中任意一个不同,就属于跨域。例如:

  • http://example.com 和 https://example.com(协议不同)
  • http://example.com 和 http://api.example.com(域名不同)
  • http://example.com 和 http://example.com:8080(端口不同)

3、为什么会有跨域问题的存在?

跨域问题是浏览器的安全机制,称为 同源策略(Same-Origin Policy)。它的目的是防止恶意网站通过脚本访问其他网站的资源,保护用户数据安全。

二、解决跨域问题

1、新建配置类

2、编写代码

java 复制代码
@Configuration//表示这是一个配置类,Spring 容器会在启动时加载该类,并将其中的配置应用到整个应用程序中。
public class WebConfig implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**")///** 表示所有路径都适用该 CORS 规则。你可以根据需要修改为特定的路径,例如 /api/**。
                .allowedOrigins("*")//表示允许所有来源(域)访问后端资源。* 是一个通配符,表示允许任何域访问。如果你只想允许特定域访问,可以将 * 替换为具体的域名,例如 "http://example.com"。
                .allowedMethods("GET","POST","PUT","DELETE")//指定允许的 HTTP 方法。这里配置了 GET、POST、PUT 和 DELETE 方法。如果需要支持其他方法(如 PATCH、OPTIONS),可以添加到列表中。
                .allowedHeaders("*");//allowedHeaders("*") 表示允许所有请求头。如果你只想允许特定请求头,可以将 * 替换为具体的头信息,例如 "Content-Type", "Authorization"。
    }
}

三、结语

以上就是跨域问题的介绍,以及其中一种解决方案。

如果对本篇文章感兴趣,请关注本博主~~

相关推荐
ZhengEnCi3 小时前
模型训练完整流程:从数据准备到模型上线的 10 个关键步骤(全文可跑)
后端·算法
王中阳Go3 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
程序猿DD3 小时前
OctaFuse Gateway 2.18.0:MCP 接入支持 OAuth,供应商粘性绑定可视化管理
后端
ZhengEnCi5 小时前
Agent 规则管理:让 Memory 做索引、让 Skill 存规则——上下文上限实测与分工方案
后端
nice_lcj5206 小时前
深入理解 Java 反射:从 Class 对象到方法调用(含性能实测 + 迷你 IOC 实战 + 面试考点)
java·开发语言·后端·面试
骑着蜗牛撵大象3276 小时前
2026 后端 AI 工程化:Spring AI 管调用、MCP 管工具、Agent 内嵌管自治
java·人工智能·后端·spring·ai·可观测性·mcp
摸爬滚打的小李7 小时前
Spring XML + WAR + Tomcat 项目启动
后端
IT_陈寒8 小时前
SpringBoot自动配置的坑,这次终于爬出来了
前端·人工智能·后端
RainbowFish8 小时前
# RAG 与智能体记忆:从原理到工程实践 > 一篇给学习者的总结。
后端
苏三说技术8 小时前
为什么越来越多人用Arthas 4 ?
后端