private void addCorsHandler(Router router) { router.route().handler(CorsHandler.create("*") .allowedHeaders(new HashSet<>(Arrays.asList("Content-Type", "X-HTTP-Method-Override", "X-XSRF-TOKEN"))) .allowedMethods(Stream.of(HttpMethod.values()).collect(Collectors.toSet()))); }
private RouteDefinition method(String value) { for (HttpMethod item : HttpMethod.values()) { if (StringUtils.equals(value, item.name(), true)) { Assert.isNull(method, "Method already set to: " + method + "!"); method = item; break; } } return this; }
public HttpMetricsImpl(MetricRegistry registry, String baseName, SocketAddress localAddress) { super(registry, baseName); openWebSockets = counter("open-websockets"); requests = throughputTimer("requests"); responses = new ThroughputMeter[]{ throughputMeter("responses-1xx"), throughputMeter("responses-2xx"), throughputMeter("responses-3xx"), throughputMeter("responses-4xx"), throughputMeter("responses-5xx") }; methodRequests = new EnumMap<>(HttpMethod.class); for (HttpMethod method : HttpMethod.values()) { methodRequests.put(method, throughputTimer(method.toString().toLowerCase() + "-requests")); } }
/** * Enables CORS * * @param allowedOriginPattern allowed origin * @param allowCredentials allow credentials (true/false) * @param maxAge in seconds * @param allowedHeaders set of allowed headers * @param methods list of methods ... if empty all methods are allowed @return self * @return self */ public RestBuilder enableCors(String allowedOriginPattern, boolean allowCredentials, int maxAge, Set<String> allowedHeaders, HttpMethod... methods) { corsHandler = CorsHandler.create(allowedOriginPattern) .allowCredentials(allowCredentials) .maxAgeSeconds(maxAge); if (methods == null || methods.length == 0) { // if not given than all methods = HttpMethod.values(); } for (HttpMethod method : methods) { corsHandler.allowedMethod(method); } if (allowedHeaders.size() > 0) { corsHandler.allowedHeaders(allowedHeaders); } return this; }
/** * @param router to add handler to * @param allowedOriginPattern origin pattern * @param allowCredentials allowed credentials * @param maxAge in seconds * @param allowedHeaders set of headers or null for none * @param methods list of methods or empty for all */ public void enableCors(Router router, String allowedOriginPattern, boolean allowCredentials, int maxAge, Set<String> allowedHeaders, HttpMethod... methods) { CorsHandler handler = CorsHandler.create(allowedOriginPattern) .allowCredentials(allowCredentials) .maxAgeSeconds(maxAge); if (methods == null || methods.length == 0) { // if not given than all methods = HttpMethod.values(); } for (HttpMethod method : methods) { handler.allowedMethod(method); } handler.allowedHeaders(allowedHeaders); router.route().handler(handler).order(ORDER_CORS_HANDLER); }