接受-控制-允许-源始终返回通配符



我希望我的 CORS 设置始终返回Accept-Control-Allow-Origin *我没有对这些请求使用 Spring 安全性,因此 Spring 安全性不可能操纵我的 Cors 配置。 目前,在请求标头源中传递的任何内容都完全被复制到响应标头接受-控制-允许源中

例: 原产地 : test.com

输出 接受-控制-允许-原产地:test.com

这是我的代码

public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("GET", "HEAD", "POST")
.allowedHeaders("Accept", "Accept-Language", "Content-Language", "Content-Type")
.exposedHeaders("Allow", "Vary", "Link", "ETag")
.maxAge(600);
}

如何解决始终返回接受-控制-允许-原点的问题 *

您可以通过声明一个过滤器来实现这一点,该过滤器将在响应中添加/更新标头值

@Component
public class HeaderFilter implements Filter {
@Override
public void doFilter(
ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
httpResponse.setHeader("Accept-Control-Allow-Origin", "*");
filterChain.doFilter(servletRequest, servletResponse);
}
}

最新更新