千锋扣丁学堂Java培训之SpringBoot框架RESTful接口设置跨域允许

2019-08-23 13:58:06 3551浏览

今天千锋扣丁学堂Java培训老师给大家分享一篇关于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(Stringorigin)方法是追加访问源地址。如果不使用”*”(即允许全部访问源),则可以配置多条访问源来做控制。

如:

corsConfiguration.addAllowedOrigin("http://www.codingke.com/"); 
corsConfiguration.addAllowedOrigin(http://www.codingke.com/);

以上就是关于千锋扣丁学堂Java培训之SpringBoot框架RESTful接口设置跨域允许的全部内容,希望对大家的学习有所帮助,想要了解更多内容的小伙伴可以登录扣丁学堂官网咨询。想要学好Java开发小编给大家推荐口碑良好的扣丁学堂,扣丁学堂有专业老师制定的Java学习路线图辅助学员学习,此外还有与时俱进的Java课程体系和Java视频教程供大家学习,想要学好Java开发技术的小伙伴快快行动吧。扣扣丁学堂Java技术交流群:850353792。


                          JavaEE/微服务/源码解析/分布式/企业级架构【VIP体验课】


     【关注微信公众号获取更多学习资料】        【扫码进入JavaEE/微服务VIP免费公开课】  



查看更多关于“Java开发资讯”的相关文章>>

标签: Java培训 Java视频教程 Java多线程 Java面试题 Java学习视频 springBoot项目

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号