Documentation
¶
Overview ¶
Package cors provides handlers to enable CORS support. Usage
import ( "github.com/astaxie/beego" "github.com/astaxie/beego/plugins/cors"
)
func main() {
// CORS for https://foo.* origins, allowing:
// - PUT and PATCH methods
// - Origin header
// - Credentials share
beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
AllowOrigins: []string{"https://*.foo.com"},
AllowMethods: []string{"PUT", "PATCH"},
AllowHeaders: []string{"Origin"},
ExposeHeaders: []string{"Content-Length"},
AllowCredentials: true,
}))
beego.Run()
}
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Allow ¶
func Allow(opts *Options) beego.FilterFunc
Allow enables CORS for requests those match the provided options.
Types ¶
type Options ¶
type Options struct {
// If set, all origins are allowed.
AllowAllOrigins bool
// A list of allowed origins. Wild cards and FQDNs are supported.
AllowOrigins []string
// If set, allows to share auth credentials such as cookies.
AllowCredentials bool
// A list of allowed HTTP methods.
AllowMethods []string
// A list of allowed HTTP headers.
AllowHeaders []string
// A list of exposed HTTP headers.
ExposeHeaders []string
// Max age of the CORS headers.
MaxAge time.Duration
}
Options represents Access Control options.
func (*Options) Header ¶
Header converts options into CORS headers.
func (*Options) IsOriginAllowed ¶
IsOriginAllowed looks up if the origin matches one of the patterns generated from Options.AllowOrigins patterns.
Source Files
¶
- cors.go
Click to show internal directories.
Click to hide internal directories.