Accept-Control-Allow-Origin всегда возвращать подстановочный знак - PullRequest
0 голосов
/ 17 июня 2020

Я хочу, чтобы мои настройки CORS всегда возвращали Accept-Control-Allow-Origin * Я не использую безопасность Spring для этого запроса, поэтому Spring Security не может манипулировать моей конфигурацией Cors. В настоящее время все, что передается в Request-Header Origin, точно копируется в заголовок ответа Accept-Control-Allow-Origin

Пример: Origin: test.com

Output Accept-Control-Allow- Origin: 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);
    }

Как исправить проблему, чтобы всегда возвращать Accept-Control-Allow-Origin *

1 Ответ

0 голосов
/ 17 июня 2020

Вы можете добиться этого, объявив фильтр, который будет добавлять / обновлять значение заголовка в ответе

    @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);
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...