FastRouter is a fast, flexible HTTP router written in Go.
FastRouter contains some customizable options, such as TrailingSlashesPolicy
, PanicHandler
, OptionsHandler
,
MethodNotAllowedHandler
, NotFoundHandler
and so on.
FastRouter also provides some useful features, such as grouping and middleware.
Fast: See Go Web Framework Benchmark
Flexible: FastRouter provides some customizable options for you:
- TrailingSlashesPolicy:
- IgnoreTrailingSlashes: ignore trailing slashes.
- AppendTrailingSlashes: append trailing slashes and redirect if request path is not end with '/'.
- RemoveTrailingSlashes: remove trailing slashes and redirect if request path is end with '/'.
- StrictTrailingSlashes: remove or append trailing slashes according to corresponding pattern.
- PanicHandler
- OptionsHandler
- MethodNotAllowedHandler
- NotFoundHandler
Compatible: FastRouter is an implementation of http.Handler, so it is compatible with third-party packages.
Middleware: Middleware is a chaining tool for chaining http.Handler
,
see Middleware.
Grouping: Grouping is an useful feature of FastRouter, it allows to nest and specify middleware of group, see Grouping.
See Documentation for details.
See Examples for details.