SpringBoot框架RESTful接口设置跨域允许

作者:Snow、杨 时间:2021-12-31 13:40:19 

跨域

跨域请求是指浏览器脚本文件在发送请求时,脚本所在的服务器和请求的服务器地址不一样。跨域是有浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制,

同源策略:是指协议、域名、端口都要相同,其中有一个不同都会产生跨域

SpringBoot框架RESTful接口解决跨域

此处是有配置文件的方式来解决的


package com.prereadweb.config.cors;

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;

/**
* @Description: 接口跨域
* @author: Yangxf
* @date: 2019/4/19 14:43
*/
@Configuration
public class CorsConfig {

private CorsConfiguration buildConfig() {
   CorsConfiguration corsConfiguration = new CorsConfiguration();
   corsConfiguration.addAllowedOrigin("*"); // 1 设置访问源地址
   corsConfiguration.addAllowedHeader("*"); // 2 设置访问源请求头
   corsConfiguration.addAllowedMethod("*"); // 3 设置访问源请求方法
   return corsConfiguration;
 }

@Bean
 public CorsFilter corsFilter() {
   UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
   source.registerCorsConfiguration("/**", buildConfig()); // 4 对接口配置跨域设置
   return new CorsFilter(source);
 }
}

"*":代表全部。"**":代表适配所有接口

其中addAllowedOrigin(String origin)方法是追加访问源地址。如果不使用”*”(即允许全部访问源),则可以配置多条访问源来做控制。 

如:


corsConfiguration.addAllowedOrigin("http://www.aimaonline.cn/");
corsConfiguration.addAllowedOrigin(http://test.aimaonline.cn/);

来源:https://blog.csdn.net/qq_37345604/article/details/89400580

标签:SpringBoot,RESTful,跨域
0
投稿

猜你喜欢

  • SpringBoot整合Pulsar的实现示例

    2021-10-09 17:39:35
  • Java Code Cache满导致应用性能降低问题解决

    2021-06-18 18:17:56
  • 基于Java利用static实现单例模式

    2021-12-20 06:07:32
  • JavaWeb 中Cookie实现记住密码的功能示例

    2023-04-06 05:06:48
  • 解决mybatis update并非所有字段需要更新问题

    2022-12-09 10:20:55
  • java处理图片背景颜色的方法

    2023-11-27 04:38:20
  • JAVA递归生成树形菜单的实现过程

    2023-07-15 08:57:22
  • Spring 整合 MyBatis的实现步骤

    2022-08-21 16:51:14
  • spring中使用mybatis plus连接sqlserver的方法实现

    2022-11-16 12:05:09
  • Java 线程池ThreadPoolExecutor源码解析

    2022-06-28 09:13:59
  • Java事务管理学习之Spring和Hibernate详解

    2023-04-11 00:01:25
  • Java命名规则详细总结

    2023-11-14 12:20:55
  • spring循环注入异常问题的解决方案

    2021-06-29 02:21:18
  • 第三方包jintellitype实现Java设置全局热键

    2023-09-25 10:33:50
  • 深入了解java.util.Arrays的使用技巧

    2023-01-10 18:01:32
  • Spring Boot 开发环境热部署详细教程

    2023-07-28 01:50:02
  • Java二维数组与稀疏数组相互转换实现详解

    2022-10-28 07:27:33
  • Java实战之实现一个好用的MybatisPlus代码生成器

    2023-06-18 02:16:10
  • Windows10系统下JDK1.8的下载安装及环境变量配置的教程

    2022-03-18 18:14:03
  • Java输入/输出流体系详解

    2023-03-01 06:37:00
  • asp之家 软件编程 m.aspxhome.com