Class CorsEnabledServiceHelper

java.lang.Object
io.helidon.webserver.cors.CorsEnabledServiceHelper

public class CorsEnabledServiceHelper extends Object
Allows services (including Helidon WebServer built-in services) to register CORS support easily.

Callers use either create(String) or create(String, CrossOriginConfig) to initialize the helper for a service. The helper uses the CrossOriginConfig instance to set up CORS behavior for the service. If the caller passes a null CrossOriginConfig or invokes the other variant of create then the sets up CORS using a default configuration:

     enabled: true
     allow-origins: ["*"]
     allow-methods: ["GET", "HEAD", "OPTIONS"]
     allow-headers: ["*"]
     allow-credentials: false
     max-age: 3600
     
All of those settings except for allow-methods are the defaults for CrossOriginConfig.
  • Field Details

    • CORS_CONFIG_KEY

      public static final String CORS_CONFIG_KEY
      Conventional configuration key for CORS set-up; used for built-in services.
      See Also:
  • Method Details

    • create

      public static CorsEnabledServiceHelper create(String serviceName, CrossOriginConfig crossOriginConfig)
      Creates a new helper based on the provided config.
      Parameters:
      serviceName - name of the service (for logging)
      crossOriginConfig - CrossOriginConfig containing CORS set-up; if null, a default is used
      Returns:
      new helper initialized with the CORS configuration
    • create

      public static CorsEnabledServiceHelper create(String serviceName)
      Creates a new helper based on a default CORS config for services.
      Parameters:
      serviceName - name of the service (for logging)
      Returns:
      new helper initialized with a default CORS configuration
    • processor

      public Handler processor()
      Constructs a Handler for performing CORS processing, according to the previously-provided Config.
      Returns:
      Handler for CORS processing