java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > SpringBoot框架RESTful接口设置跨域允许

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

作者:Snow、杨

这篇文章主要为大家详细介绍了SpringBoot框架RESTful接口设置跨域允许,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

跨域

跨域请求是指浏览器脚本文件在发送请求时,脚本所在的服务器和请求的服务器地址不一样。跨域是有浏览器的同源策略造成的,是浏览器对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/);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文