您现在的位置是:首页 > 编程 > 

【Spring Boot】028

2025-07-23 20:45:03
【Spring Boot】028 【Spring Boot】028-CORS跨域一、概述1、跨域介绍参考文章什么是跨域?跨域解决方法2、CORS介绍CORS是一个WC标准,全称是"跨域资源共享"(Cross-origin resource sharing)。它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。参考文章阮一峰:跨

【Spring Boot】028

【Spring Boot】028-CORS跨域一、概述

1、跨域介绍

参考文章

什么是跨域?跨域解决方法

2、CORS介绍

CORS是一个WC标准,全称是"跨域资源共享"(Cross-origin resource sharing)。

它允许浏览器向跨源服务器,发出XMLHttpRequest请求,从而克服了AJAX只能同源使用的限制。

参考文章

阮一峰:跨域资源共享 CORS 详解

.html

二、Spring Boot 跨域实现

1、方法级跨域

代码语言:javascript代码运行次数:0运行复制
package com.zibo.;

import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping("hello")
    @CrossOrigin(value = "http://localhost/8081", maxAge = 1800, allowedHeaders = "*")
    public String hello(){
        return "Hello World!";
    }

}

2、类级跨域

代码语言:javascript代码运行次数:0运行复制
package com.zibo.;

import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@CrossOrigin(value = "http://localhost/8081", maxAge = 1800, allowedHeaders = "*")
public class HelloController {

    @RequestMapping("hello")
    public String hello(){
        return "Hello World!";
    }

}

、全局跨域

代码语言:javascript代码运行次数:0运行复制
package com.zibo.;

import org.annotation.Bean;
import org.annotation.Configuration;
import org.springframework.CorsConfiguration;
import org.springframework.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;

import java.util.ArrayList;
import java.util.List;

// 跨域访问配置
@Configuration
public class CorsConfig {
    private CorsConfiguration buildConfig() {
        CorsConfiguration corsConfiguration = new CorsConfiguration();
        corsConfiguration.setAllowCredentials(true);  // sessionId 多次访问一致

        // 允许访问的客户端域名
        List<String> allowedOriginPatterns = new ArrayList<>();
        allowedOriginPatterns.add("*");
        corsConfiguration.setAllowedOriginPatterns(allowedOriginPatterns);
        corsConfiguration.addAllowedOrigin("*"); // 允许任何域名使用
        corsConfiguration.addAllowedHeader("*"); // 允许任何头
        corsConfiguration.addAllowedMethod("*"); // 允许任何方法(post、get等)
        return corsConfiguration;
    }

    @Bean
    public CorsFilter corsFilter() {
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", buildConfig()); // 对接口配置跨域设置
        return new CorsFilter(source);
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2025-01-06,如有侵权请联系 cloudcommunity@tencent 删除cors跨域域名springboot

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1198692.html

相关标签:无
上传时间: 2025-07-23 12:31:36

上一篇:【Spring Boot】029

下一篇:【Spring Boot】027

留言与评论(共有 6 条评论)
本站网友 乳酸钙
25分钟前 发表
分享自作者个人站点/博客
本站网友 马鞭草的功效
21分钟前 发表
CORS介绍CORS是一个WC标准
本站网友 网站源代码下载
26分钟前 发表
buildConfig()); // 对接口配置跨域设置 return new CorsFilter(source); } }本文参与 腾讯云自媒体同步曝光计划
本站网友 暴雪中国
5分钟前 发表
发出XMLHttpRequest请求
本站网友 汪峰与章子怡
23分钟前 发表
参考文章阮一峰:跨域资源共享 CORS 详解.html二