echo – github.com/labstack/echo Index | Files | Directories

package echo

import "github.com/labstack/echo"

Index

Constants

const (
	MethodCONNECT = "CONNECT"
	MethodDELETE  = "DELETE"
	MethodGET     = "GET"
	MethodHEAD    = "HEAD"
	MethodOPTIONS = "OPTIONS"
	MethodPATCH   = "PATCH"
	MethodPOST    = "POST"
	MethodPUT     = "PUT"
	MethodTRACE   = "TRACE"

	MIMEJSON          = "application/json"
	MIMEText          = "text/plain"
	MIMEHTML          = "html/plain"
	MIMEForm          = "application/x-www-form-urlencoded"
	MIMEMultipartForm = "multipart/form-data"

	HeaderAccept             = "Accept"
	HeaderContentDisposition = "Content-Disposition"
	HeaderContentLength      = "Content-Length"
	HeaderContentType        = "Content-Type"
)

Variables

var (

	// Errors
	ErrUnsupportedMediaType = errors.New("echo: unsupported media type")
)

Functions

func NewRouter

func NewRouter(e *Echo) (r *router)

Types

type Context

type Context struct {
	Request  *http.Request
	Response *response
	// contains filtered or unexported fields
}

Context represents context for the current request. It holds request and response references, path parameters, data and registered handler.

func (*Context) Bind

func (c *Context) Bind(i interface{}) error

Bind decodes the body into provided type based on Content-Type header.

func (*Context) Get

func (c *Context) Get(key string) interface{}

Get retrieves data from the context.

func (*Context) HTML

func (c *Context) HTML(code int, html string) (err error)

HTML sends an html/plain response with status code.

func (*Context) HTMLTemplate

func (c *Context) HTMLTemplate(code int, t *template.Template, name string, data interface{}) (err error)

HTMLTemplate applies the template associated with t that has the given name to the specified data object and sends an html/plain response with status code.

func (*Context) JSON

func (c *Context) JSON(code int, i interface{}) error

JSON sends an application/json response with status code.

func (*Context) P

func (c *Context) P(i uint8) string

P returns path parameter by index.

func (*Context) Param

func (c *Context) Param(n string) string

Param returns path parameter by name.

func (*Context) Redirect

func (c *Context) Redirect(code int, url string)

Redirect redirects the request using http.Redirect with status code.

func (*Context) Render

func (c *Context) Render(code int, i interface{}) error

Render encodes the provided type and sends a response with status code based on Accept header.

func (*Context) Set

func (c *Context) Set(key string, val interface{})

Set saves data in the context.

func (*Context) String

func (c *Context) String(code int, s string) (err error)

String sends a text/plain response with status code.

type Echo

type Echo struct {
	Router *router
	// contains filtered or unexported fields
}

func New

func New() (e *Echo)

New creates a echo instance.

func (*Echo) Connect

func (e *Echo) Connect(path string, h Handler)

Connect adds a CONNECT route > handler to the router.

func (*Echo) Delete

func (e *Echo) Delete(path string, h Handler)

Delete adds a DELETE route > handler to the router.

func (*Echo) Get

func (e *Echo) Get(path string, h Handler)

Get adds a GET route > handler to the router.

func (*Echo) Group

func (e *Echo) Group(pfx string) *Echo

Group is similar to Sub but excludes inheriting middleware from the parent router.

func (*Echo) Head

func (e *Echo) Head(path string, h Handler)

Head adds a HEAD route > handler to the router.

func (*Echo) Index

func (e *Echo) Index(file string)

Index serves index file.

func (*Echo) InternalServerErrorHandler

func (e *Echo) InternalServerErrorHandler(h Handler)

InternalServerErrorHandler sets a custom InternalServerError handler.

func (*Echo) MaxParam

func (e *Echo) MaxParam(n uint8)

MaxParam sets the maximum allowed path parameters. Default is 5, good enough for many users.

func (*Echo) MethodNotAllowedHandler

func (e *Echo) MethodNotAllowedHandler(h Handler)

MethodNotAllowedHandler sets a custom MethodNotAllowed handler.

func (*Echo) NotFoundHandler

func (e *Echo) NotFoundHandler(h Handler)

NotFoundHandler sets a custom NotFound handler.

func (*Echo) Options

func (e *Echo) Options(path string, h Handler)

Options adds an OPTIONS route > handler to the router.

func (*Echo) Patch

func (e *Echo) Patch(path string, h Handler)

Patch adds a PATCH route > handler to the router.

func (*Echo) Post

func (e *Echo) Post(path string, h Handler)

Post adds a POST route > handler to the router.

func (*Echo) Put

func (e *Echo) Put(path string, h Handler)

Put adds a PUT route > handler to the router.

func (*Echo) Run

func (e *Echo) Run(addr string)

Run a server

func (*Echo) RunServer

func (e *Echo) RunServer(server *http.Server)

RunServer runs a custom server

func (*Echo) RunTLS

func (e *Echo) RunTLS(addr, certFile, keyFile string)

RunTLS a server

func (*Echo) RunTLSServer

func (e *Echo) RunTLSServer(server *http.Server, certFile, keyFile string)

RunTLSServer runs a custom server with TLS configuration

func (*Echo) ServeFile

func (e *Echo) ServeFile(path, file string)

ServeFile serves a file.

func (*Echo) ServeHTTP

func (e *Echo) ServeHTTP(rw http.ResponseWriter, r *http.Request)

func (*Echo) Static

func (e *Echo) Static(path, root string)

Static serves static files.

func (*Echo) Sub

func (e *Echo) Sub(pfx string) *Echo

Sub creates a new sub router. It inherits all properties from the parent router, including middleware.

func (*Echo) Trace

func (e *Echo) Trace(path string, h Handler)

Trace adds a TRACE route > handler to the router.

func (*Echo) Use

func (e *Echo) Use(m ...Middleware)

Use adds handler to the middleware chain.

type Handler

type Handler interface{}

type HandlerFunc

type HandlerFunc func(*Context)

func (HandlerFunc) ServeHTTP

func (h HandlerFunc) ServeHTTP(http.ResponseWriter, *http.Request)

NOP

type Middleware

type Middleware interface{}

type MiddlewareFunc

type MiddlewareFunc func(HandlerFunc) HandlerFunc

type Params

type Params []param

func (Params) Get

func (ps Params) Get(n string) (v string)

Get returns path parameter by name.

Source Files

context.go echo.go response.go router.go

Directories

PathSynopsis
example
middleware
Version
v0.0.5
Published
Apr 5, 2015
Platform
windows/amd64
Imports
9 packages
Last checked
1 week ago

Tools for package owners.