gpt4 book ai didi

spring-mvc - Spring MVC(引导)不发送某些文件的 MIME 类型(WOFF 等)

转载 作者:行者123 更新时间:2023-12-03 08:02:17 26 4
gpt4 key购买 nike

我正在编写一个基于 Spring Boot 的应用程序,并注意到 chrome 中有一些警告。它提示例如网络字体(扩展名 woff)作为纯文本而不是正确的 mime 类型发送。

我在没有特殊配置的情况下对静态文件使用常规机制。
我发现的源代码看起来不可能为“stock”ResourceHandler 添加更多的 mimetypes。 Resourcehandler 将 mime 类型识别分派(dispatch)到 servlet 容器,这是 spring-boot 1.2 的默认 tomcat。

我错过了什么吗?有人知道一种简单的方法来增强资源映射以提供更多具有正确 mime 类型的文件类型吗?

现在,我正在考虑编写一个过滤器,该过滤器会针对静态内容触发并在事后修补缺少的 mimetypes。也许我应该在 springsource 创建一个功能请求...... ;-)

最佳答案

好的,我自己找到了:-)

在 Spring boot 中,您可以使用此自定义程序自定义 servlet 容器并在其中添加新的 mimetype。

(更新)

Spring 启动 2.x:

@Component
public class ServletCustomizer implements WebServerFactoryCustomizer<TomcatServletWebServerFactory> {
@Override
public void customize(TomcatServletWebServerFactory factory) {
MimeMappings mappings = new MimeMappings(MimeMappings.DEFAULT);
mappings.add("woff", "application/x-font-woff");
factory.setMimeMappings(mappings);
}
}

Spring 启动 1.x:
@Component
public class ServletCustomizer implements EmbeddedServletContainerCustomizer {

@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
MimeMappings mappings = new MimeMappings(MimeMappings.DEFAULT);
mappings.add("woff","application/font-woff");
mappings.add("woff2","application/font-woff2");
container.setMimeMappings(mappings);
}
}

关于spring-mvc - Spring MVC(引导)不发送某些文件的 MIME 类型(WOFF 等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27617275/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com