middleware

package
v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Jan 24, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	IrisContextKey = "oapi-codegen/iris-context"
	UserDataKey    = "oapi-codegen/user-data"
)

Variables

This section is empty.

Functions

func GetIrisContext

func GetIrisContext(ctx context.Context) iris.Context

GetIrisContext gets the iris context from within requests. It returns nil if not found or wrong type.

func GetUserData

func GetUserData(ctx context.Context) interface{}

func OapiRequestValidator

func OapiRequestValidator(swagger *openapi3.T) iris.Handler

OapiRequestValidator is a iris middleware function which validates incoming HTTP requests to make sure that they conform to the given OAPI 3.0 specification. When OAPI validation fails on the request, we return an HTTP/400 with error message

func OapiRequestValidatorWithOptions

func OapiRequestValidatorWithOptions(swagger *openapi3.T, options *Options) iris.Handler

OapiRequestValidatorWithOptions creates a validator from a swagger object, with validation options

func OapiValidatorFromYamlFile

func OapiValidatorFromYamlFile(path string) (iris.Handler, error)

OapiValidatorFromYamlFile creates a validator middleware from a YAML file path

func ValidateRequestFromContext

func ValidateRequestFromContext(ctx iris.Context, router routers.Router, options *Options) error

ValidateRequestFromContext is called from the middleware above and actually does the work of validating a request.

Types

type ErrorHandler

type ErrorHandler func(ctx iris.Context, message string, statusCode int)

ErrorHandler is called when there is an error in validation

type MultiErrorHandler

type MultiErrorHandler func(openapi3.MultiError) error

MultiErrorHandler is called when oapi returns a MultiError type

type Options

type Options struct {
	Options           openapi3filter.Options
	ErrorHandler      ErrorHandler
	ParamDecoder      openapi3filter.ContentParameterDecoder
	UserData          interface{}
	MultiErrorHandler MultiErrorHandler
	// SilenceServersWarning allows silencing a warning for https://github.com/ula/oapi-codegen/issues/882 that reports when an OpenAPI spec has `spec.Servers != nil`
	SilenceServersWarning bool
}

Options to customize request validation. These are passed through to openapi3filter.

Jump to

Keyboard shortcuts

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