在做文件上传的过程中,文件会被集中的上传到服务器的某一个目录下,上传完之后,在前台页面就需要回显,那么如果能映射到文件呢,之前我的做法是,前端根据文件id调用后台接口,然后后台返回一个完整的文件地址,这样做会暴露真实的路径地址,非常的不安全,其实还有个更好的方法就是做静态资源文件的映射,如下:
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
// 实现静态资源的映射
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations("classpath:/META-INF/resources/") // 映射swagger2,如果你继承了swagger2,那么就需要为他也做一个映射,不然无法访问到swagger文档
.addResourceLocations("file:/workspaces/images/"); // 映射本地静态资源
}
@Bean
public RestTemplate restTemplate(RestTemplateBuilder builder) {
return builder.build();
}
}