首页 > 解决方案 > 使用 Spring 5.2 删除 eot 字体的“Vary”标头

问题描述

目前我正在将一些 Spring MVC 组件从 Spring 5.1.12 升级到 Spring 5.2.2。Spring 5.2 中发生的变化是Cors 处理。这会影响 IE9 中字体的加载。结合 IE9 缓存字体有点不稳定

究竟发生了什么是在 te 升级后添加了 3 个响应标头

Vary: Origin 
Vary: Access-Control-Request-Method
Vary: Access-Control-Request-Headers 

我试图改变 CORS 政策

现有代码:

@EnableWebMvc
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

@Override
public void addResourceHandlers(final ResourceHandlerRegistry registry) {
    ..
    registry.addResourceHandler("/fonts/**").addResourceLocations("/fonts/");
    ..
}

添加

 @Override
 public void addCorsMappings(final CorsRegistry registry) {
        registry.addMapping("/fonts/**").
        allowedOrigins("http://domain2.com").allowedMethods("PUT", "DELETE").allowedHeaders("header1", "header2", "header3").exposedHeaders("header1", "header2")

        .allowCredentials(false).maxAge(3600);
 }

但这不会影响标题。如何删除这些 eot 文件的标头,以便 IE9 继续正确显示它们?

标签: spring-mvc

解决方案


推荐阅读