springboot解决后端跨域
时间: 2023-05-08 13:58:55 浏览: 75
前后端分离的开发模式已经成为了当今互联网项目的主流,而跨域问题也是前后端分离开发中不可避免的问题。对于Java开发者而言,使用SpringBoot框架可以轻松地解决后端跨域问题。
在SpringBoot中解决跨域问题,只需要用到一个注解即可,即@CrossOrigin。在Controller层的方法上使用@CrossOrigin注解,可以设置跨域请求的允许来源、方法、头信息、是否允许携带凭证等相关信息。
例如,可以给Controller的方法添加如下注解:
@CrossOrigin(origins = "http://localhost:8080", maxAge = 3600)
其中,origins设置了允许请求的来源,maxAge设置了缓存时间。
另外,如果希望所有接口都允许跨域,可以在启动类中添加如下配置:
@Configuration
public class CorsConfig {
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurerAdapter() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "POST", "PUT", "DELETE")
.allowedHeaders("*")
.allowCredentials(true)
.maxAge(3600);
}
};
}
}
以上代码配置了所有接口都允许跨域,允许的请求方式为GET、POST、PUT、DELETE,允许携带凭证,缓存时间为1个小时。
总之,在SpringBoot中解决跨域问题非常简单,只需要使用@CrossOrigin注解或者在配置类中添加相关配置即可。