【发布时间】:2015-02-24 09:03:01
【问题描述】:
使用Spring MVC's ResourceHandler 很容易提供资源。
但是,某些文件,即 .ico 文件无法正确识别,它们没有得到正确的 Content-Type 标头。看来这是由ResourceHttpRequestHandler 处理的:
protected MediaType getMediaType(Resource resource) {
MediaType mediaType = null;
String mimeType = getServletContext().getMimeType(resource.getFilename());
if (StringUtils.hasText(mimeType)) {
mediaType = MediaType.parseMediaType(mimeType);
}
if (jafPresent && (mediaType == null || MediaType.APPLICATION_OCTET_STREAM.equals(mediaType))) {
MediaType jafMediaType = ActivationMediaTypeFactory.getMediaType(resource.getFilename());
if (jafMediaType != null && !MediaType.APPLICATION_OCTET_STREAM.equals(jafMediaType)) {
mediaType = jafMediaType;
}
}
return mediaType;
}
那么如何在 Spring Boot 1.2 中配置可识别的文件扩展名/MIME 类型? (对于 Tomcat 和 Undertow)
【问题讨论】:
标签: spring spring-mvc tomcat spring-boot undertow