springboot解决静态托管跨域
时间: 2023-11-20 17:52:26 浏览: 42
在Spring Boot中,可以通过配置WebMvcConfigurer来解决静态资源跨域问题。具体步骤如下:
1. 创建一个配置类,实现WebMvcConfigurer接口。
2. 在配置类中重写addResourceHandlers方法,添加静态资源的访问路径和实际存储路径。
3. 在addResourceHandlers方法中添加addResourceLocations方法,指定静态资源的存储路径。
4. 在addResourceHandlers方法中添加addResourceHandler方法,指定静态资源的访问路径。
5. 在addResourceHandler方法中添加addCorsMappings方法,设置跨域访问的允许来源、允许方法、允许头信息等。
具体代码如下:
```
@Configuration
public class ResourceConfig implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**")
.addResourceLocations("classpath:/static/")
.setCachePeriod(31536000)
.resourceChain(true)
.addResolver(new PathResourceResolver());
}
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/static/**")
.allowedOrigins("*")
.allowedMethods("GET", "POST", "PUT", "DELETE")
.allowedHeaders("*")
.maxAge(3600);
}
}
```