handler

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Mar 7, 2025 License: MIT Imports: 15 Imported by: 0

Documentation

Overview

Package handler provides ...

Package handler provides ...

Package handler provides ...

Package handler provides ...

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MeterSrvHandler added in v0.4.0

func MeterSrvHandler(next http.Handler) http.Handler

MeterSrvHandler returns a middleware that metrics the request.

func RecoverHandler

func RecoverHandler(next http.Handler) http.Handler

RecoverHandler returns a middleware that recover the request.

func TracerCliHandler added in v0.4.0

func TracerCliHandler(trans http.RoundTripper) http.RoundTripper

TracerCliHandler returns a middleware that trace the request.

func TracerSrvHandler added in v0.4.0

func TracerSrvHandler(next http.Handler) http.Handler

TracerSrvHandler returns a middleware that trace the request.

Types

type CORSOptions added in v0.1.5

type CORSOptions 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.
	AllowOriginFunc func(origin string) bool
	// AllowOriginRequestFunc is a custom function to validate the origin. It takes the HTTP Request object and the origin as
	// argument and returns true if allowed or false otherwise. If this option is set, the content of `AllowedOrigins`
	// and `AllowOriginFunc` is ignored.
	AllowOriginRequestFunc func(r *http.Request, origin string) bool
	// AllowedMethods is a list of methods the client is allowed to use with
	// cross-domain requests. Default value is simple methods (HEAD, GET and POST).
	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
	ExposedHeaders []string
	// MaxAge indicates how long (in seconds) the results of a preflight request
	// can be cached
	MaxAge int
	// AllowCredentials indicates whether the request can include user credentials like
	// cookies, HTTP authentication or client side SSL certificates.
	AllowCredentials bool
	// AllowPrivateNetwork indicates whether to accept cross-origin requests over a
	// private network.
	AllowPrivateNetwork bool
	// OptionsPassthrough instructs preflight to let other potential next handlers to
	// process the OPTIONS method. Turn this on if your application handles OPTIONS.
	OptionsPassthrough bool
	// Provides a status code to use for successful OPTIONS requests.
	// Default value is http.StatusNoContent (204).
	OptionsSuccessStatus int
	// Debugging flag adds additional output to debug server side CORS issues
	Debug bool
}

CORSOptions is a configuration container to setup the CORS middleware.

type Cors added in v0.1.12

type Cors struct {
	// Debug logger
	Debug bool
	// contains filtered or unexported fields
}

Cors http handler

func AllowAll added in v0.1.12

func AllowAll() *Cors

AllowAll create a new Cors handler with permissive configuration allowing all origins with all standard methods with any header and credentials.

func Default added in v0.1.12

func Default() *Cors

Default creates a new Cors handler with default options.

func New added in v0.1.12

func New(options CORSOptions) *Cors

New creates a new Cors handler with the provided options.

func (*Cors) Handler added in v0.1.12

func (c *Cors) Handler(h http.Handler) http.Handler

Handler apply the CORS specification on the request, and add relevant CORS headers as necessary.

func (*Cors) HandlerFunc added in v0.1.12

func (c *Cors) HandlerFunc(w http.ResponseWriter, r *http.Request)

HandlerFunc provides Martini compatible handler

func (*Cors) OriginAllowed added in v0.1.12

func (c *Cors) OriginAllowed(r *http.Request) bool

OriginAllowed check the Origin of a request. No origin at all is also allowed.

func (*Cors) ServeHTTP added in v0.1.12

func (c *Cors) ServeHTTP(w http.ResponseWriter, r *http.Request, next http.HandlerFunc)

Negroni compatible interface

type Logger added in v0.1.12

type Logger interface {
	Printf(string, ...any)
}

Logger generic interface for logger

type WrappedWriter added in v0.4.0

type WrappedWriter struct {
	http.ResponseWriter
	// contains filtered or unexported fields
}

WrappedWriter wrapped http response writer

func (*WrappedWriter) WriteHeader added in v0.4.0

func (w *WrappedWriter) WriteHeader(statusCode int)

WriteHeader cover writer WriteHeader

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL
JackTT - Gopher 🇻🇳