middleware

package
v0.0.0-...-5dad29e Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2023 License: MIT Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WithMiddleware

func WithMiddleware(rt http.RoundTripper, middlewares ...Middleware) http.RoundTripper

WithMiddleware general way. For flexibility use middleware.Container

Types

type Authentication

type Authentication struct {
	// contains filtered or unexported fields
}

Authentication through bearer token

func NewAuthentication

func NewAuthentication(token string) *Authentication

func (Authentication) Header

func (a Authentication) Header() (string, string)

Header returns header name and header value

func (Authentication) RoundTripper

func (a Authentication) RoundTripper(next http.RoundTripper) http.RoundTripper

type Middleware

type Middleware interface {
	RoundTripper(next http.RoundTripper) http.RoundTripper
}

Middleware for middleware as structure

type NetworkProfiler

type NetworkProfiler struct{}

NetworkProfiler middleware

func NewNetworkProfiler

func NewNetworkProfiler() *NetworkProfiler

func (NetworkProfiler) RoundTripper

func (NetworkProfiler) RoundTripper(next http.RoundTripper) http.RoundTripper

type Newrelic

type Newrelic struct {
	// contains filtered or unexported fields
}

func NewNewrelicApiGateway

func NewNewrelicApiGateway(urlFormatter URLFormatFunc) *Newrelic

func (Newrelic) RoundTripper

func (r Newrelic) RoundTripper(next http.RoundTripper) http.RoundTripper

type RequestID

type RequestID struct{}

RequestID

func NewRequestID

func NewRequestID() *RequestID

NewRequestID pass "context-id" into the request DEPRECATED should be replaced to Open Trace

func (RequestID) RoundTripper

func (RequestID) RoundTripper(next http.RoundTripper) http.RoundTripper

type RequestLogger

type RequestLogger struct {
	// contains filtered or unexported fields
}

RequestLogger create log for request

func NewRequestLogger

func NewRequestLogger(loggerEntry log.Entry) *RequestLogger

NewRequestLogger create logger for request

func (*RequestLogger) Process

func (l *RequestLogger) Process(request *http.Request) error

func (*RequestLogger) RoundTripper

func (l *RequestLogger) RoundTripper(next http.RoundTripper) http.RoundTripper

type ResponseLogger

type ResponseLogger struct {
	// contains filtered or unexported fields
}

ResponseLogger create log for response

func NewResponseLogger

func NewResponseLogger(loggerEntry log.Entry) *ResponseLogger

NewResponseLogger create logger for response

func (*ResponseLogger) Process

func (l *ResponseLogger) Process(response *http.Response) error

func (*ResponseLogger) RoundTripper

func (l *ResponseLogger) RoundTripper(next http.RoundTripper) http.RoundTripper

type RoundTripperFn

type RoundTripperFn func(request *http.Request) (*http.Response, error)

RoundTripperFn interface for middleware as function

func (RoundTripperFn) RoundTrip

func (f RoundTripperFn) RoundTrip(request *http.Request) (*http.Response, error)

type URLFormatFunc

type URLFormatFunc func(r *http.Request) string

func NewURLFormatFunc

func NewURLFormatFunc() URLFormatFunc

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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