首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >springboot解决跨域问题

springboot解决跨域问题

作者头像
科技新语
发布2024-11-25 16:38:04
发布2024-11-25 16:38:04
1940
举报

首先先了解一下什么是跨域问题?

前端调用的后端接口不属于同一个域(域名或端口不同),就会产生跨域问题,也就是说你的应用访问了该应用域名或端口之外的域名或端口。

SpringBoot跨域问题设置

方法一:

代码语言:javascript
复制
java 代码解读复制代码package com.bo.config;

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 {

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

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

}

方法二:

代码语言:javascript
复制
java 代码解读复制代码/**
 * 跨域配置
 */
@Configuration
public class CorsConfig implements WebMvcConfigurer {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        // 设置允许跨域请求路径
        registry.addMapping("/**")
                // 设置允许跨域请求的域名
                .allowedOriginPatterns("*")  //或.allowedOriginPatterns("http://www.baidu.com") 指定域名
                //是否允许cookie
                .allowCredentials(true)
                // 设置允许的请求方式
                .allowedMethods("GET", "POST", "PUT", "DELETE")
                // 设置允许的header属性
                .allowedHeaders("*")
                // 允许跨域时间
                .maxAge(3600);
    }
    
}

配置好重新启动后端项目即可生效

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档