server

package
v0.9.1 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2023 License: MIT Imports: 11 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AddContextValue added in v0.8.0

func AddContextValue(req *http.Request, key, value any)

func File

func File(contentType string, f io.Reader) func(w http.ResponseWriter, req *http.Request)

func GetContextValue added in v0.8.0

func GetContextValue[t any](req *http.Request, key any, value *t) bool

func Handle

func Handle(handlers ...any) func(w http.ResponseWriter, req *http.Request)

func HasContextValue added in v0.8.0

func HasContextValue[t any](req *http.Request, key any) bool

func Html

func Html(str string) func(w http.ResponseWriter, req *http.Request)

func JwtClaims added in v0.8.0

func JwtClaims(req *http.Request) jwt.Claims

func PathParams added in v0.8.0

func PathParams(req *http.Request) map[any]string

func Recover added in v0.9.0

func Recover(req *http.Request) any

Types

type ChainHandler

type ChainHandler func(http.ResponseWriter, *http.Request) bool
var Get ChainHandler = Method("GET")
var Path ChainHandler = Method("PATCH")
var Post ChainHandler = Method("POST")
var Put ChainHandler = Method("PUT")

func BasicAuthHandler

func BasicAuthHandler(user, pass string) ChainHandler

func Method

func Method(method string) ChainHandler

func NopHandler added in v0.5.1

func NopHandler() ChainHandler

type JwtAuth added in v0.8.0

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

func NewJwtAuth added in v0.8.0

func NewJwtAuth(key []byte, expiration time.Duration, verifyUser func(user, pass string) (bool, error)) *JwtAuth

func (*JwtAuth) LoginHandler added in v0.8.0

func (ja *JwtAuth) LoginHandler() http.HandlerFunc

func (*JwtAuth) SampleAuthForm added in v0.8.0

func (ja *JwtAuth) SampleAuthForm(target, defaultRedirect string) http.HandlerFunc

func (*JwtAuth) SoftAuthHandler added in v0.8.0

func (ja *JwtAuth) SoftAuthHandler() ChainHandler

func (*JwtAuth) StrictAuthHandler added in v0.8.0

func (ja *JwtAuth) StrictAuthHandler(redirect string) ChainHandler

type ResponseBuilder

type ResponseBuilder interface {
	Status(status int) ResponseBuilder
	WithBody(body any) ResponseBuilder
	WithHeader(key, value string) ResponseBuilder
	WithCookie(cookie *http.Cookie) ResponseBuilder
	Redirect(redirect string)
	As(contentType string)
	AsTextPlain()
	AsJson()
	AsHtml()
}

func Response added in v0.8.0

type Router added in v0.8.0

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

func (*Router) ServeHTTP added in v0.8.0

func (r *Router) ServeHTTP(w http.ResponseWriter, req *http.Request)

type RouterBuilder added in v0.9.0

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

func NewRouterBuilder added in v0.9.0

func NewRouterBuilder() *RouterBuilder

func (*RouterBuilder) Build added in v0.9.0

func (r *RouterBuilder) Build() (*Router, error)

func (*RouterBuilder) Delete added in v0.9.0

func (r *RouterBuilder) Delete(pathExpr string, handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) Get added in v0.9.0

func (r *RouterBuilder) Get(pathExpr string, handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) InternalErr added in v0.9.0

func (r *RouterBuilder) InternalErr(handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) NotFound added in v0.9.0

func (r *RouterBuilder) NotFound(handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) Patch added in v0.9.0

func (r *RouterBuilder) Patch(pathExpr string, handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) Post added in v0.9.0

func (r *RouterBuilder) Post(pathExpr string, handler http.HandlerFunc) *RouterBuilder

func (*RouterBuilder) Put added in v0.9.0

func (r *RouterBuilder) Put(pathExpr string, handler http.HandlerFunc) *RouterBuilder

Directories

Path Synopsis
from https://github.com/pillarjs/path-to-regexp/tree/c7ec332e87d8560673884d5629e1cb23cb03cb87
from https://github.com/pillarjs/path-to-regexp/tree/c7ec332e87d8560673884d5629e1cb23cb03cb87

Jump to

Keyboard shortcuts

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