cors

package
v1.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2024 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func New

func New(config ...Config) pine.Middleware

func ParseMethod

func ParseMethod(method string) bool

func SetCors

func SetCors(c *pine.Ctx, cfg Config) *pine.Ctx

Types

type Config

type Config struct {
	// AllowedOrigins is a list of origins a cross-domain request can be executed from.
	// If the special "*" value is present in the list, all origins will be allowed.
	// An origin may contain a wildcard (*) to replace 0 or more characters
	// (i.e.: http://*.domain.com). Usage of wildcards implies a small performance penalty.
	// Only one wildcard can be used per origin.
	//
	// Default value is ["*"]
	AllowedOrigins []string

	// AllowOriginFunc is a custom function to validate the origin. It take the origin
	// as argument and returns true if allowed or false otherwise. If this option is
	// set, the content of AllowedOrigins is ignored.
	//
	// Default value is nil
	AllowOriginFunc func(origin string) bool

	// AllowedMethods is a list of methods the client is allowed to use with
	// cross-domain requests.
	//
	// Default value is simple methods ["GET", "POST", "PUT", "PATCH", "DELETE"]
	AllowedMethods []string

	// AllowedHeaders is list of non simple headers the client is allowed to use with
	// cross-domain requests.
	// If the special "*" value is present in the list, all headers will be allowed.
	// Default value is "" but "Origin" is always appended to the list.
	AllowedHeaders string

	// ExposedHeaders indicates which headers are safe to expose to the API of a CORS
	// API specification
	//
	// Default value is ""
	ExposedHeaders string

	// MaxAge indicates how long (in seconds) the results of a preflight request
	// can be cached
	// Default value is 0, i.e. the browser does not cache the result.
	// if set to 0, max-age is set to 5 seconds which is the default value set
	// by the browsers.
	MaxAge int
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL