前端无法访问后端静态资源

Spring Boot 默认只能访问 resources/staticresources/publicresources/META-INF/resources 这些静态资源目录,项目根目录下的 upload 文件夹不是静态资源目录,所以直接访问会 404。

解决:

     配置静态资源映射
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        // 映射 /upload/** 到项目根目录下的 upload 文件夹
        registry.addResourceHandler("/upload/**")
                .addResourceLocations("file:" + System.getProperty("user.dir") + "/upload/");
    }
}
为什么不直接上传到 resources/static 目录:

        这种方式不推荐,因为 static 目录在打包后会进 jar 包,运行时不方便写入和管理。
也可写图片下载接口(不如静态映射简单)

发表评论