http

package
v0.0.0-...-e647751 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2022 License: GPL-3.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Get

func Get(ctx context.Context, url string) (resp *http.Response, err error)

Get calls http.Get with expected http User-Agent.

func GetUserAgent

func GetUserAgent() string

GetUserAgent returns the generated http User-Agent.

func NewRequest

func NewRequest(ctx context.Context, method, url string, body io.Reader) (*http.Request, error)

NewRequest calls http.NewRequest with expected http User-Agent.

Types

type ContextKey

type ContextKey int

ContextKey is a key used in http request contexts.

const (
	// ContextKeySession is the persistent session.
	ContextKeySession ContextKey = iota
	// ContextKeyLocalizer is the language localizer.
	ContextKeyLocalizer
	// ContextKeyLanguage is the language.
	ContextKeyLanguage
	// ContextKeyAccount is the logged in user's account.
	ContextKeyAccount
	// ContextKeyOauthNonce is the oauth nonce.
	ContextKeyOauthNonce
)

type Module

type Module interface {
	Name() string
	Route(s *Server) error
	SetServer(s *Server)
}

Module represents a module that can be added to a http server.

type ResponseWriter

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

ResponseWriter is a ResponseWriter that keeps track of status and body size.

func NewResponseWriter

func NewResponseWriter(w http.ResponseWriter) *ResponseWriter

NewResponseWriter creates a new ResponseWriter.

func (*ResponseWriter) BodyLength

func (r *ResponseWriter) BodyLength() int

BodyLength returns the response body length.

func (*ResponseWriter) Status

func (r *ResponseWriter) Status() int

Status returns the status code of the response.

func (*ResponseWriter) Write

func (r *ResponseWriter) Write(b []byte) (int, error)

Write to the response writer, also updating body length.

func (*ResponseWriter) WriteHeader

func (r *ResponseWriter) WriteHeader(status int)

WriteHeader sets the status of the response.

type Server

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

Server is a http 2 web server.

func NewServer

func NewServer(_ context.Context, m metrics.Collector) (*Server, error)

NewServer creates a new http web server.

func (*Server) HandleFunc

func (s *Server) HandleFunc(path string, f func(http.ResponseWriter, *http.Request)) *mux.Route

HandleFunc attaches a function to a path.

func (*Server) MiddlewareMetrics

func (s *Server) MiddlewareMetrics(next http.Handler) http.Handler

MiddlewareMetrics sends http request metrics.

func (*Server) PathPrefix

func (s *Server) PathPrefix(path string) *mux.Route

PathPrefix attaches a new route url path prefix.

func (*Server) Start

func (s *Server) Start() error

Start starts the web server.

func (*Server) Stop

func (s *Server) Stop(ctx context.Context) error

Stop shuts down the web server.

type SessionKey

type SessionKey int

SessionKey is a key used for storing data in a web session.

const (
	// SessionKeyAccountID contains the id of the currently logged-in user.
	SessionKeyAccountID SessionKey = iota
	// SessionKeyLoginRedirect contains the url to be redirected too after logging in.
	SessionKeyLoginRedirect
	// SessionKeyReturnURI contains the url to be redirected too after logging in.
	SessionKeyReturnURI
	// SessionKeyOAuthNonce contains the nonce sent to the oauth server.
	SessionKeyOAuthNonce
)

type Transport

type Transport struct {
}

Transport adds the expected http User-Agent to any request.

func (*Transport) RoundTrip

func (*Transport) RoundTrip(req *http.Request) (*http.Response, error)

RoundTrip executes the default http.Transport with expected http User-Agent.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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