【发布时间】:2019-02-26 17:01:03
【问题描述】:
当我尝试从 localhost/pdfs/filename.pdf 打开时,Pdf 文件为空白,但是当我为图片执行此操作时,它可以工作 (localhost/images/imagename.png) 我的应用在 docker 容器中运行。
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Autowired
private ApplicationEventPublisher publisher;
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/images/**").addResourceLocations("classpath:/static/images/").setCachePeriod(31556926);
registry.addResourceHandler("/pdfs/**").addResourceLocations("classpath:/static/pdfs/").setCachePeriod(31556926);
}
}
文件夹、图片和 pdf 都在 src/main/resources/static 文件夹中。
为什么它适用于图像文件,但它不适用于 pdf 文件? 谢谢。
【问题讨论】:
-
对我来说,在 Web 应用程序中提供静态资源的符号“classpath:”很奇怪。事实上,Spring Boot 无需任何额外配置即可为它们提供服务。当您请求 pdf 时,您是否在浏览器开发人员工具中检查了网络选项卡中的响应代码和内容类型是什么?
-
代码为304,内容类型为pdf。响应是 x��\�r�6���...
-
能否请您清除浏览器缓存并再次执行上述操作?
-
Carlos 谢谢,但我已经尝试过了,得到了相同的结果。
-
你找到解决办法了吗?
标签: java spring docker spring-boot pdf