Documentation ¶
Index ¶
- type Key
- type Resolver
- type Route
- type Router
- func (router *Router) Add(resolver Resolver)
- func (router *Router) Handle(response http.ResponseWriter, request *http.Request)
- func (router *Router) Name() string
- func (router *Router) Resolve(path string) (*Route, bool)
- func (router *Router) Reverse(name string, parameters map[string]string) (path string, found bool)
- func (router *Router) ServeHTTP(response http.ResponseWriter, request *http.Request)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Resolver ¶
type Resolver interface { // Name returns name of resolver. // Name uses for resolver identification. Name() string // Resolve searches and returns route by passed URL path. Resolve(string) (*Route, bool) // Reverse makes URL path by resolver name and URL parameters (regular expression groups). // Name may be nested like "route", "router:route", "api:v1:endpoint". Reverse(string, map[string]string) (string, bool) }
Resolver is a URL routing interface. It's common interface for Route and Router.
type Route ¶
type Route struct {
// contains filtered or unexported fields
}
Route represents URL pattern -> handler relation. Route implements Resolver interface.
type Router ¶
type Router struct {
// contains filtered or unexported fields
}
Router is a group of resolvers. Router implements Resolver and http.Handler interface.
func (*Router) Add ¶
Add adds new resolver to router. It's may replace existing resolver with same name.
func (*Router) Handle ¶
func (router *Router) Handle(response http.ResponseWriter, request *http.Request)
Handle looking for route by path and delegates request to handler. If route not found, Handle will write header http.StatusNotFound.
Click to show internal directories.
Click to hide internal directories.