Documentation ¶
Index ¶
- Constants
- Variables
- func Load(ctx Context, key interface{}) interface{}
- func Store(ctx Context, key interface{}, value interface{})
- type ContentUtil
- func (u ContentUtil) JSON(ctx Context) error
- func (u ContentUtil) SetJSONMarshaller(ctx Context) error
- func (u ContentUtil) SetJSONUnmarshaller(ctx Context) error
- func (u ContentUtil) SetXMLMarshaller(ctx Context) error
- func (u ContentUtil) SetXMLUnmarshaller(ctx Context) error
- func (u ContentUtil) XML(ctx Context) error
- type Context
- type HTTPHandlerFunc
- type Handler
- type HandlerFunc
- type Middleware
- func (m *Middleware) After(h Handler) *Middleware
- func (m *Middleware) AfterFunc(f func(Context) error) *Middleware
- func (m *Middleware) Before(h Handler) *Middleware
- func (m *Middleware) BeforeFunc(f func(Context) error) *Middleware
- func (m *Middleware) Handle(ctx Context) error
- func (m *Middleware) Wrap(f func(ctx Context, next Handler) error) *Middleware
- type Mux
- type MuxCreator
- type Router
- func (r *Router) AppendInterceptor(i func(w http.ResponseWriter, r *http.Request, next http.HandlerFunc))
- func (r *Router) Delete(pattern string, h Handler)
- func (r *Router) DeleteFunc(pattern string, f func(Context) error)
- func (r *Router) Get(pattern string, h Handler)
- func (r *Router) GetFunc(pattern string, f func(Context) error)
- func (r *Router) Handle(pattern, method string, h Handler)
- func (r *Router) HandleFunc(pattern, method string, f func(Context) error)
- func (r *Router) Head(pattern string, h Handler)
- func (r *Router) HeadFunc(pattern string, f func(Context) error)
- func (r *Router) OnError(f func(Context, error) error)
- func (r *Router) Patch(pattern string, h Handler)
- func (r *Router) PatchFunc(pattern string, f func(Context) error)
- func (r *Router) Post(pattern string, h Handler)
- func (r *Router) PostFunc(pattern string, f func(Context) error)
- func (r *Router) Put(pattern string, h Handler)
- func (r *Router) PutFunc(pattern string, f func(Context) error)
- func (r *Router) ServeHTTP(w http.ResponseWriter, rq *http.Request)
- func (r *Router) Subrouter(pathPrefix string) *Router
- func (r *Router) Use(h Handler)
- func (r *Router) UseAfter(h Handler)
- func (r *Router) UseAfterFunc(f func(Context) error)
- func (r *Router) UseFunc(f func(Context) error)
Constants ¶
const ( AcceptHeader = "Accept" ContentTypeHeader = "Content-Type" )
const ( MethodGet = "GET" MethodHead = "HEAD" MethodPost = "POST" MethodPut = "PUT" MethodPatch = "PATCH" // RFC 5789 MethodDelete = "DELETE" MethodConnect = "CONNECT" MethodOptions = "OPTIONS" MethodTrace = "TRACE" )
Variables ¶
var ( ErrResponseWasAlreadySent = errors.New("result was sent") ErrUnsupportableContext = errors.New("unsupportable context") )
var Content = ContentUtil{}
Functions ¶
Types ¶
type ContentUtil ¶
type ContentUtil struct{}
func (ContentUtil) JSON ¶
func (u ContentUtil) JSON(ctx Context) error
func (ContentUtil) SetJSONMarshaller ¶
func (u ContentUtil) SetJSONMarshaller(ctx Context) error
func (ContentUtil) SetJSONUnmarshaller ¶
func (u ContentUtil) SetJSONUnmarshaller(ctx Context) error
func (ContentUtil) SetXMLMarshaller ¶
func (u ContentUtil) SetXMLMarshaller(ctx Context) error
func (ContentUtil) SetXMLUnmarshaller ¶
func (u ContentUtil) SetXMLUnmarshaller(ctx Context) error
func (ContentUtil) XML ¶
func (u ContentUtil) XML(ctx Context) error
type Context ¶
type Context interface { http.ResponseWriter Request() *http.Request Bind(interface{}) error Result(int, interface{}) error // contains filtered or unexported methods }
func ContextFromRequest ¶
func ContextFromRequest(w http.ResponseWriter, r *http.Request) Context
type HTTPHandlerFunc ¶
type HTTPHandlerFunc func(http.ResponseWriter, *http.Request)
func (HTTPHandlerFunc) Handle ¶
func (h HTTPHandlerFunc) Handle(ctx Context) error
type HandlerFunc ¶
func (HandlerFunc) Handle ¶
func (h HandlerFunc) Handle(ctx Context) error
type Middleware ¶
type Middleware struct { OnError func(Context, error) error // contains filtered or unexported fields }
func NewMiddleware ¶
func NewMiddleware(h Handler) *Middleware
func NewMiddlewareFunc ¶
func NewMiddlewareFunc(f func(Context) error) *Middleware
func (*Middleware) After ¶ added in v1.4.0
func (m *Middleware) After(h Handler) *Middleware
After create middleware which call Middleware handler after handler from argument
func (*Middleware) AfterFunc ¶ added in v1.4.0
func (m *Middleware) AfterFunc(f func(Context) error) *Middleware
AfterFunc do same as After
func (*Middleware) Before ¶ added in v1.4.0
func (m *Middleware) Before(h Handler) *Middleware
Before create middleware which call Middleware handler before handler from argument
func (*Middleware) BeforeFunc ¶ added in v1.4.0
func (m *Middleware) BeforeFunc(f func(Context) error) *Middleware
BeforeFunc do same as Before
func (*Middleware) Handle ¶
func (m *Middleware) Handle(ctx Context) error
func (*Middleware) Wrap ¶
func (m *Middleware) Wrap(f func(ctx Context, next Handler) error) *Middleware
Wrap crate middleware from f argument where pass Middleware handler as next argument
type MuxCreator ¶
type MuxCreator interface {
Create() Mux
}
type Router ¶
type Router struct {
// contains filtered or unexported fields
}
func NewMux ¶
func NewMux(mc MuxCreator) *Router
NewMux allocates and returns a new ruffe Router with provided mux
func (*Router) AppendInterceptor ¶
func (r *Router) AppendInterceptor(i func(w http.ResponseWriter, r *http.Request, next http.HandlerFunc))
AppendInterceptor adding http.Handler with reference on next interceptor which invokes before ruffe handler Warning: Don't forget to call next(w, r) inside interceptor, if it won't be called handler will stop on current executing interceptor
func (*Router) DeleteFunc ¶ added in v1.4.2
func (*Router) Handle ¶
Handle registers the handler for the given pattern with method. If a handler already exists for pattern, Handle panics (Only for default Mux).
func (*Router) HandleFunc ¶
HandleFunc registers the handler for the given pattern with method. If a handler already exists for pattern, Handle panics (Only for default Mux).
func (*Router) Subrouter ¶ added in v1.3.1
Subrouter creates copy of router Handle and HandleFunc will register handlers to parent router mux
func (*Router) UseAfter ¶
UseAfter applies handler which invokes after executing each registered handler
func (*Router) UseAfterFunc ¶
UseAfterFunc applies handler which invokes after executing each registered handler