package routers // import "github.com/getkin/kin-openapi/routers" VARIABLES var ErrMethodNotAllowed error = &RouteError{"method not allowed"} ErrMethodNotAllowed is returned when no method of the matched route matches var ErrPathNotFound error = &RouteError{"no matching operation was found"} ErrPathNotFound is returned when no route match is found TYPES type Route struct { Spec *openapi3.T Server *openapi3.Server Path string PathItem *openapi3.PathItem Method string Operation *openapi3.Operation } Route describes the operation an http.Request can match type RouteError struct { Reason string } RouteError describes Router errors func (e *RouteError) Error() string type Router interface { // FindRoute matches an HTTP request with the operation it resolves to. // Hosts are matched from the OpenAPIv3 servers key. // // If you experience ErrPathNotFound and have localhost hosts specified as your servers, // turning these server URLs as relative (leaving only the path) should resolve this. // // See openapi3filter for example uses with request and response validation. FindRoute(req *http.Request) (route *Route, pathParams map[string]string, err error) } Router helps link http.Request.s and an OpenAPIv3 spec