http_api

package
v0.0.0-...-1a90b44 Latest Latest
Warning

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

Go to latest
Published: Jan 13, 2016 License: MPL-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CompressHandler

func CompressHandler(h http.Handler) http.Handler

CompressHandler gzip compresses HTTP responses for clients that support it via the 'Accept-Encoding' header.

func Decorate

func Decorate(f APIHandler, ds ...Decorator) httprouter.Handle

func GetTopicChannelArgs

func GetTopicChannelArgs(rp getter) (string, string, error)

func LogMethodNotAllowedHandler

func LogMethodNotAllowedHandler(l app.Logger) http.Handler

func LogNotFoundHandler

func LogNotFoundHandler(l app.Logger) http.Handler

func LogPanicHandler

func LogPanicHandler(l app.Logger) func(w http.ResponseWriter, req *http.Request, p interface{})

func NewDeadlineTransport

func NewDeadlineTransport(timeout time.Duration) *http.Transport

A custom http.Transport with support for deadline timeouts

func Respond

func Respond(w http.ResponseWriter, statusCode int, statusTxt string, data interface{})

func RespondV1

func RespondV1(w http.ResponseWriter, code int, data interface{})

func Serve

func Serve(listener net.Listener, handler http.Handler, proto string, l app.Logger)

Types

type APIHandler

type APIHandler func(http.ResponseWriter, *http.Request, httprouter.Params) (interface{}, error)

func NegotiateVersion

func NegotiateVersion(f APIHandler) APIHandler

func PlainText

func PlainText(f APIHandler) APIHandler

func V1

func V1(f APIHandler) APIHandler

type Client

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

func NewClient

func NewClient(tlsConfig *tls.Config) *Client

func (*Client) GETV1

func (c *Client) GETV1(endpoint string, v interface{}) error

GETV1 is a helper function to perform a V1 HTTP request and parse our NSQ daemon's expected response format, with deadlines.

func (*Client) NegotiateV1

func (c *Client) NegotiateV1(endpoint string, v interface{}) error

NegotiateV1 is a helper function to perform a v1 HTTP request and fallback to parsing the old backwards-compatible response format storing the result in the value pointed to by v.

TODO: deprecated, remove in 1.0 (replace calls with GETV1)

func (*Client) POSTV1

func (c *Client) POSTV1(endpoint string) error

PostV1 is a helper function to perform a V1 HTTP request and parse our NSQ daemon's expected response format, with deadlines.

type Decorator

type Decorator func(APIHandler) APIHandler

func Log

func Log(l app.Logger) Decorator

type Err

type Err struct {
	Code int
	Text string
}

func (Err) Error

func (e Err) Error() string

type PostParams

type PostParams struct {
	*http.Request
}

func (*PostParams) Get

func (p *PostParams) Get(key string) (string, error)

type ReqParams

type ReqParams struct {
	url.Values
	Body []byte
}

func NewReqParams

func NewReqParams(req *http.Request) (*ReqParams, error)

func (*ReqParams) Get

func (r *ReqParams) Get(key string) (string, error)

func (*ReqParams) GetAll

func (r *ReqParams) GetAll(key string) ([]string, error)

Jump to

Keyboard shortcuts

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