我希望我的 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);
}
}