Documentation
¶
Index ¶
- Variables
- func New(opts ...Option) gin.HandlerFunc
- type Config
- type Option
- func WithAllowAllOrigins(allowAllOrigins bool) Option
- func WithAllowCredentials(allowCredentials bool) Option
- func WithAllowHeaders(headers []string) Option
- func WithAllowMethods(methods []string) Option
- func WithAllowOriginFunc(originFunc func(origin string) bool) Option
- func WithAllowOrigins(origins []string) Option
- func WithAllowWildcard(allowWildcard bool) Option
- func WithExposeHeaders(headers []string) Option
- func WithMaxAge(maxAge time.Duration) Option
Constants ¶
This section is empty.
Variables ¶
var ( DefaultSchemas = []string{ "http://", "https://", } ExtensionSchemas = []string{ "chrome-extension://", "safari-extension://", "moz-extension://", "ms-browser-extension://", } FileSchemas = []string{ "file://", } WebSocketSchemas = []string{ "ws://", "wss://", } )
Functions ¶
func New ¶
func New(opts ...Option) gin.HandlerFunc
New returns the location middleware with user-defined custom configuration.
Types ¶
type Config ¶
type Config struct { AllowAllOrigins bool // AllowOrigins 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. // Default value is [] AllowOrigins []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 AllowOrigins is ignored. AllowOriginFunc func(origin string) bool // AllowMethods is a list of methods the client is allowed to use with // cross-domain requests. Default value is simple methods (GET and POST) AllowMethods []string // AllowHeaders is list of non simple headers the client is allowed to use with // cross-domain requests. AllowHeaders []string // AllowCredentials indicates whether the request can include user credentials like // cookies, HTTP authentication or client side SSL certificates. AllowCredentials bool // ExposeHeaders indicates which headers are safe to expose to the API of a CORS // API specification ExposeHeaders []string // MaxAge indicates how long (with second-precision) the results of a preflight request // can be cached MaxAge time.Duration // Allows to add origins like http://some-domain/*, https://api.* or http://some.*.subdomain.com AllowWildcard bool // Allows usage of popular browser extensions schemas AllowBrowserExtensions bool // Allows usage of WebSocket protocol AllowWebSockets bool // Allows usage of file:// schema (dangerous!) use it only when you 100% sure it's needed AllowFiles bool }
Config represents all available options for the middleware.
func (*Config) AddAllowHeaders ¶
AddAllowHeaders is allowed to add custom headers
func (*Config) AddAllowMethods ¶
AddAllowMethods is allowed to add custom methods
func (*Config) AddExposeHeaders ¶
AddExposeHeaders is allowed to add custom expose headers
type Option ¶ added in v0.2.5
type Option func(*Config)
Option for queue system
func WithAllowAllOrigins ¶ added in v0.2.5
WithAllowAllOrigins set allowAllOrigins function default false
func WithAllowCredentials ¶ added in v0.2.5
WithAllowCredentials set allowCredentials function default true
func WithAllowHeaders ¶ added in v0.2.5
WithAllowHeaders set headers function default "Origin", "Content-Type", "Content-Length", "Access-Control-Allow-Origin", "Access-Control-Allow-Headers", "Cache-Control", "Content-Language"
func WithAllowMethods ¶ added in v0.2.5
WithAllowMethods set methods function default "GET", "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"
func WithAllowOriginFunc ¶ added in v0.2.5
WithAllowOriginFunc set origin function default true
func WithAllowOrigins ¶ added in v0.2.5
WithAllowOrigins set origins function default *
func WithAllowWildcard ¶ added in v0.2.5
WithAllowWildcard set allowWildcard function default false
func WithExposeHeaders ¶ added in v0.2.5
WithExposeHeaders set headers function
func WithMaxAge ¶ added in v0.2.5
WithMaxAge set maxAge function default 12 * time.Hour