在请求头中设置 Access-Control-Allow-Origin
时间: 2023-06-30 21:11:38 浏览: 101
Ajax 设置Access-Control-Allow-Origin实现跨域访问
5星 · 资源好评率100%
好的,您可以在响应头中设置 Access-Control-Allow-Origin 字段,允许跨域请求的源。您可以通过在 Spring Boot 中配置 WebMvcConfigurer 来实现。以下是一个例子:
```java
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.allowedHeaders("*")
.maxAge(3600);
}
@Bean
public FilterRegistrationBean<CorsFilter> corsFilter() {
UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
CorsConfiguration config = new CorsConfiguration();
config.setAllowCredentials(true);
config.addAllowedOrigin("*");
config.addAllowedHeader("*");
config.addAllowedMethod("*");
source.registerCorsConfiguration("/**", config);
FilterRegistrationBean<CorsFilter> bean = new FilterRegistrationBean<>(new CorsFilter(source));
bean.setOrder(0);
return bean;
}
}
```
在上面的例子中,我们使用了 addCorsMappings() 方法来配置允许跨域请求的源、方法、头以及缓存时间。我们还使用了 corsFilter() 方法来注册过滤器,以确保所有的请求都能正确地设置 Access-Control-Allow-Origin 字段。
希望这个例子能对您有所帮助!
阅读全文