SpringBoot 解决跨域问题

SpringBoot 解决跨域问题

遇到前端跨域访问问题,类似于这样的:

在Springboot项目里加上这个配置文件CorsConfig.java重启 之后即可实现跨域访问,前端无需再配置跨域。

1、添加跨域工具包CorsConfig

2、写跨域代码

java 复制代码
import 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;

@Configuration
public class CorsConfig {

    // 当前跨域请求最大有效时长。这里默认1天
    private static final long MAX_AGE = 24 * 60 * 60;

    @Bean
    public CorsFilter corsFilter() {
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        CorsConfiguration corsConfiguration = new CorsConfiguration();
        // corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址
        corsConfiguration.addAllowedOrigin("http://localhost:8080");    // 只允许8080访问
        corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头
        corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法
        corsConfiguration.setMaxAge(MAX_AGE);
        source.registerCorsConfiguration("/**", corsConfiguration); // 4 对接口配置跨域设置
        return new CorsFilter(source);
    }
}

注意,加完这个配置类后一定要 重启后台 !!!

相关推荐
s***w11213 小时前
SpringMVC新版本踩坑[已解决]
java
老李头喽13 小时前
走进单元测试
java·单元测试
就叫飞六吧13 小时前
Spring MVC 接口命名为什么会有 *.do/actions等身影?
java·spring·mvc
Victor35613 小时前
Redis(154)Redis的数据一致性如何保证?
后端
葡萄成熟时 !13 小时前
黑马学生管理系统
java·开发语言
r***869813 小时前
springboot三层架构详细讲解
spring boot·后端·架构
Victor35613 小时前
Redis(155)Redis的数据持久化如何优化?
后端
许泽宇的技术分享14 小时前
AgentFramework-零基础入门-第08章_部署和监控代理
人工智能·后端·agent框架·agentframework
h***673714 小时前
springboot中配置logback-spring.xml
spring boot·spring·logback
沐浴露z14 小时前
为什么使用SpringAI时通常用Builder来创建对象?详解 【Builder模式】和【直接 new】的区别
java·python·建造者模式