Skip to content
Snippets Groups Projects
Commit 802fcd6a authored by Daniel Gerhardt's avatar Daniel Gerhardt
Browse files

Use constants for HTTP methods and header names

parent 132a42fd
1 merge request!143Use constants for HTTP methods and header names
Pipeline #29654 passed with warnings with stages
in 1 minute and 15 seconds
...@@ -21,10 +21,13 @@ package de.thm.arsnova.web; ...@@ -21,10 +21,13 @@ package de.thm.arsnova.web;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
public class CorsFilter extends org.springframework.web.filter.CorsFilter { public class CorsFilter extends org.springframework.web.filter.CorsFilter {
private static final String X_REQUESTED_WITH = "X-Requested-With";
private static final String TOKEN_HEADER_NAME = "Arsnova-Auth-Token"; private static final String TOKEN_HEADER_NAME = "Arsnova-Auth-Token";
private final Logger logger = LoggerFactory.getLogger(CorsFilter.class); private final Logger logger = LoggerFactory.getLogger(CorsFilter.class);
...@@ -41,24 +44,24 @@ public class CorsFilter extends org.springframework.web.filter.CorsFilter { ...@@ -41,24 +44,24 @@ public class CorsFilter extends org.springframework.web.filter.CorsFilter {
/* Grant full access from specified origins */ /* Grant full access from specified origins */
config = new CorsConfiguration(); config = new CorsConfiguration();
config.setAllowedOrigins(origins); config.setAllowedOrigins(origins);
config.addAllowedHeader("Accept"); config.addAllowedHeader(HttpHeaders.ACCEPT);
config.addAllowedHeader("Content-Type"); config.addAllowedHeader(HttpHeaders.CONTENT_TYPE);
config.addAllowedHeader("X-Requested-With"); config.addAllowedHeader(X_REQUESTED_WITH);
config.addAllowedHeader(TOKEN_HEADER_NAME); config.addAllowedHeader(TOKEN_HEADER_NAME);
config.addAllowedMethod("GET"); config.addAllowedMethod(HttpMethod.GET);
config.addAllowedMethod("POST"); config.addAllowedMethod(HttpMethod.POST);
config.addAllowedMethod("PUT"); config.addAllowedMethod(HttpMethod.PUT);
config.addAllowedMethod("PATCH"); config.addAllowedMethod(HttpMethod.PATCH);
config.addAllowedMethod("DELETE"); config.addAllowedMethod(HttpMethod.DELETE);
config.setAllowCredentials(true); config.setAllowCredentials(true);
source.registerCorsConfiguration("/**", config); source.registerCorsConfiguration("/**", config);
} else { } else {
/* Grant limited access from all origins */ /* Grant limited access from all origins */
config = new CorsConfiguration(); config = new CorsConfiguration();
config.addAllowedOrigin("*"); config.addAllowedOrigin("*");
config.addAllowedHeader("Accept"); config.addAllowedHeader(HttpHeaders.ACCEPT);
config.addAllowedHeader("X-Requested-With"); config.addAllowedHeader(X_REQUESTED_WITH);
config.addAllowedMethod("GET"); config.addAllowedMethod(HttpMethod.GET);
source.registerCorsConfiguration("/", config); source.registerCorsConfiguration("/", config);
source.registerCorsConfiguration("/arsnova-config", config); source.registerCorsConfiguration("/arsnova-config", config);
source.registerCorsConfiguration("/configuration/", config); source.registerCorsConfiguration("/configuration/", config);
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment