springboot设置access-origin
时间: 2023-10-09 16:05:35 浏览: 132
要在 Spring Boot 中设置访问控制允许跨域资源共享(CORS),可以使用 Spring Boot 提供的 @CrossOrigin 注解或配置 CorsFilter 过滤器。
1. 使用 @CrossOrigin 注解
在控制器类或方法上使用 @CrossOrigin 注解,设置 allowedOrigins、allowedMethods、allowedHeaders 和 allowCredentials 属性,如下所示:
```java
@RestController
@RequestMapping("/api")
@CrossOrigin(origins = "http://localhost:8080", maxAge = 3600)
public class MyController {
@GetMapping("/hello")
public String hello() {
return "Hello World!";
}
}
```
2. 使用 CorsFilter 过滤器
在配置类中添加 CorsFilter 过滤器,如下所示:
```java
@Configuration
public class CorsConfig {
@Bean
public CorsFilter corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.addAllowedOrigin("http://localhost:8080");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
config.setAllowCredentials(true);
source.registerCorsConfiguration("/**", config);
return new CorsFilter(source);
}
}
```
以上两种方式都可以设置允许的跨域资源共享,具体使用哪种方式取决于具体的场景和需求。
阅读全文