Skip to content
This repository was archived by the owner on Dec 19, 2023. It is now read-only.

Commit 2fb3824

Browse files
committed
Refactored cors configuration for java modules (fixes #168)
1 parent 972ba47 commit 2fb3824

File tree

2 files changed

+8
-18
lines changed

2 files changed

+8
-18
lines changed

graphql-spring-boot-autoconfigure/src/main/java/com/oembedler/moon/graphql/boot/GraphQLWebAutoConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,14 @@
6161
import org.springframework.boot.web.servlet.ServletRegistrationBean;
6262
import org.springframework.context.annotation.Bean;
6363
import org.springframework.context.annotation.Configuration;
64+
import org.springframework.web.cors.CorsConfiguration;
6465
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
6566
import org.springframework.web.filter.CorsFilter;
6667
import org.springframework.web.servlet.DispatcherServlet;
67-
import org.springframework.web.servlet.config.annotation.CorsRegistryWorkaround;
6868

6969
import javax.annotation.PostConstruct;
7070
import javax.servlet.MultipartConfigElement;
71+
import java.util.LinkedHashMap;
7172
import java.util.List;
7273
import java.util.Map;
7374
import java.util.Optional;
@@ -88,6 +89,7 @@
8889
@EnableConfigurationProperties({GraphQLServletProperties.class})
8990
public class GraphQLWebAutoConfiguration {
9091

92+
9193
public static final String QUERY_EXECUTION_STRATEGY = "queryExecutionStrategy";
9294
public static final String MUTATION_EXECUTION_STRATEGY = "mutationExecutionStrategy";
9395
public static final String SUBSCRIPTION_EXECUTION_STRATEGY = "subscriptionExecutionStrategy";
@@ -143,8 +145,12 @@ public GraphQLErrorStartupListener graphQLErrorStartupListener() {
143145
@ConditionalOnClass(CorsFilter.class)
144146
@ConditionalOnProperty(value = "graphql.servlet.corsEnabled", havingValue = "true", matchIfMissing = true)
145147
public CorsFilter corsConfigurer() {
148+
Map<String, CorsConfiguration> corsConfigurations = new LinkedHashMap<>(1);
149+
CorsConfiguration corsConfiguration = new CorsConfiguration().applyPermitDefaultValues();
150+
corsConfigurations.put(graphQLServletProperties.getCorsMapping(), corsConfiguration);
151+
146152
UrlBasedCorsConfigurationSource configurationSource = new UrlBasedCorsConfigurationSource();
147-
configurationSource.setCorsConfigurations(CorsRegistryWorkaround.getCorsConfiguration(graphQLServletProperties.getCorsMapping()));
153+
configurationSource.setCorsConfigurations(corsConfigurations);
148154
configurationSource.setAlwaysUseFullPath(true);
149155

150156
return new CorsFilter(configurationSource);

graphql-spring-boot-autoconfigure/src/main/java/org/springframework/web/servlet/config/annotation/CorsRegistryWorkaround.java

Lines changed: 0 additions & 16 deletions
This file was deleted.

0 commit comments

Comments
 (0)