rest

package module
v0.0.0-...-5f19cb3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 7, 2020 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	DisableHttpStatus bool
)
View Source
var ErrDataNotFound = &responseError{
	Type:       "DataNotFound",
	Reason:     "",
	HttpStatus: http.StatusNotFound,
}
View Source
var ErrUserNotFound = &responseError{
	Type:       "UserNotFound",
	Reason:     "",
	HttpStatus: http.StatusNotFound,
}
View Source
var ErrUserNotLogin = &responseError{
	Type:       "UserNotLogin",
	Reason:     "",
	HttpStatus: http.StatusForbidden,
}
View Source
var OK = &responseSuccess{
	Success: true,
}

Functions

func Json

func Json(data interface{}) *responseSuccess

func NewError

func NewError(errType string, reason string, httpStatus int) *responseError

func NewInvalidParameterError

func NewInvalidParameterError(reason string) *responseError

func NewSystemError

func NewSystemError(what string, reason string) *responseError

func NewURLNotFoundError

func NewURLNotFoundError(reason string) *responseError

func Serve

func Serve(addr string, r *Router)

Types

type Context

type Context struct {
	Request    *http.Request
	RequestID  string
	RequestURI string
	// contains filtered or unexported fields
}

func (*Context) GetInputBool

func (ctx *Context) GetInputBool(key string) bool

func (*Context) GetInputInt64

func (ctx *Context) GetInputInt64(key string) int64

func (*Context) GetInputInt64Array

func (ctx *Context) GetInputInt64Array(key string) []int64

func (*Context) GetInputString

func (ctx *Context) GetInputString(key string) string

获取请求参数

func (*Context) GetInputStringArray

func (ctx *Context) GetInputStringArray(key string) []string

func (*Context) GetValue

func (ctx *Context) GetValue(key string) (interface{}, bool)

func (*Context) ParseInput

func (ctx *Context) ParseInput(dest interface{}) Error

func (*Context) SetValue

func (ctx *Context) SetValue(key string, value interface{})

type Error

type Error interface {
	Status() int
}

type Filter

type Filter interface {
	BeforeRequest(*Context) Error
	AfterRequest(*Context) Error
}

type FilterFunc

type FilterFunc func(*Context) Error

type HadnlerFunc

type HadnlerFunc func(*Context) Result

type Result

type Result interface {
	Status() int
}

type Router

type Router struct {
	// contains filtered or unexported fields
}

func NewRouter

func NewRouter() *Router

func (*Router) AppendFilter

func (router *Router) AppendFilter(filter Filter)

func (*Router) AppendFilterAfterRequest

func (router *Router) AppendFilterAfterRequest(fn FilterFunc)

func (*Router) AppendFilterBeforeRequest

func (router *Router) AppendFilterBeforeRequest(fn FilterFunc)

func (*Router) Delete

func (router *Router) Delete(uri string, fn HadnlerFunc)

func (*Router) Get

func (router *Router) Get(uri string, fn HadnlerFunc)

func (*Router) NewSubRouter

func (router *Router) NewSubRouter(uriPrefix string) *Router

func (*Router) Options

func (router *Router) Options(uri string, fn HadnlerFunc)

func (*Router) Post

func (router *Router) Post(uri string, fn HadnlerFunc)

func (*Router) Put

func (router *Router) Put(uri string, fn HadnlerFunc)

func (*Router) ServeHTTP

func (router *Router) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP for http.Handler interface

func (*Router) SetRequestHandler

func (router *Router) SetRequestHandler(method string, uri string, fn HadnlerFunc)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL