Versions in this module Expand all Collapse all v0 v0.1.0 Nov 1, 2026 Changes in this version + const DefaultMaxBodySize + var ErrBodyTooLarge = problem.New(func(details *problem.Builder) { ... }) + var ErrInvalidJSON = problem.New(func(details *problem.Builder) { ... }) + var ErrInvalidMultipart = problem.New(func(details *problem.Builder) { ... }) + var ErrInvalidPathParameter = problem.New(func(details *problem.Builder) { ... }) + var ErrInvalidQueryParameter = problem.New(func(details *problem.Builder) { ... }) + var ErrInvalidXML = problem.New(func(details *problem.Builder) { ... }) + var ErrNoHooksMiddleware = hook.ErrNoHooks + var ErrStrictUnsupported = errors.New("request: Strict is not supported for XML, Bytes and String bodies") + var ErrUnsupportedMediaType = problem.New(func(details *problem.Builder) { ... }) + var ErrValidationFailed = problem.New(func(details *problem.Builder) { ... }) + func Bytes(request *http.Request, opts ...BodyOption) ([]byte, error) + func Cookie(r *http.Request, name string) *http.Cookie + func CookieValue(r *http.Request, name string) string + func CookieValueOr(r *http.Request, name string, fallback string) string + func Cursor(r *http.Request, opts ...pagination.CursorOption) (pagination.CursorParams, error) + func HasHeader(r *http.Request, key string) bool + func HasQuery(r *http.Request, name string) bool + func Header(r *http.Request, key string) string + func HeaderOr(r *http.Request, key string, fallback string) string + func HeaderValues(r *http.Request, key string) []string + func JSON[T any](request *http.Request, opts ...BodyOption) (value T, err error) + func MaxBodySizeFromContext(ctx context.Context) (int64, bool) + func MustSession(r *http.Request, opts ...SessionOption) *session.Session + func Page(r *http.Request, opts ...pagination.Option) (pagination.PageParams, error) + func ParamOr[T Scalar](r *http.Request, name string, fallback T) T + func Param[T Scalar](r *http.Request, name string) (T, error) + func ParseJSON[T any](request *http.Request, schema validate.Schema[T], opts ...BodyOption) (T, error) + func ParseXML[T any](request *http.Request, schema validate.Schema[T], opts ...BodyOption) (T, error) + func QueryOr[T Scalar](r *http.Request, name string, fallback T) T + func Query[T Scalar](r *http.Request, name string) (T, error) + func Session(r *http.Request, opts ...SessionOption) (*session.Session, bool) + func String(request *http.Request, opts ...BodyOption) (string, error) + func User[U any](r *http.Request) (U, error) + func ValidateJSON[T any](request *http.Request, schema validate.Schema[T], opts ...BodyOption) (T, error) + func ValidateXML[T any](request *http.Request, schema validate.Schema[T], opts ...BodyOption) (T, error) + func ValidationProblem(err error) error + func XML[T any](request *http.Request, opts ...BodyOption) (value T, err error) + type BodyOption func(*bodyConfig) + func MaxSize(n int64) BodyOption + func Strict() BodyOption + func Unlimited() BodyOption + type Form struct + func Multipart(r *http.Request, maxSize int64) (*Form, error) + func (form *Form) File(name string) *multipart.FileHeader + func (form *Form) Files(name string) []*multipart.FileHeader + func (form *Form) RemoveAll() error + func (form *Form) Value(name string) string + func (form *Form) Values(name string) []string + type HookRegistry interface + AfterResponse func(...func(error)) + BeforeWrite func(...func(http.ResponseWriter, []byte)) + BeforeWriteHeader func(...func(http.ResponseWriter, int)) + func Hooks(r *http.Request) HookRegistry + type Scalar interface + type SessionOption func(*sessionConfig) + func WithSessionHandle(handle session.Handle) SessionOption