Documentation ¶
Index ¶
Constants ¶
const ( MIMEJSON = "application/json" MIMEHTML = "text/html" MIMEXML = "application/xml" MIMEXML2 = "text/xml" MIMEPlain = "text/plain" MIMEPOSTForm = "application/x-www-form-urlencoded" MIMEMultipartPOSTForm = "multipart/form-data" )
Content-Type MIME of the most common data formats.
Variables ¶
var ( JSON = jsonBinding{} XML = xmlBinding{} Form = formBinding{} Query = queryBinding{} FormPost = formPostBinding{} FormMultipart = formMultipartBinding{} URI = uriBinding{} Header = headerBinding{} )
These implement the Binding interface and can be used to bind the data present in the request to struct instances.
var ( // ErrConvertMapStringSlice can not covert to map[string][]string ErrConvertMapStringSlice = errors.New("can not convert to map slices of strings") // ErrConvertToMapString can not convert to map[string]string ErrConvertToMapString = errors.New("can not convert to map of strings") )
var ( // ErrMultiFileHeader multipart.FileHeader invalid ErrMultiFileHeader = errors.New("unsupported field type for multipart.FileHeader") // ErrMultiFileHeaderLenInvalid array for []*multipart.FileHeader len invalid ErrMultiFileHeaderLenInvalid = errors.New("unsupported len of array for []*multipart.FileHeader") )
var EnableDecoderDisallowUnknownFields = false
EnableDecoderDisallowUnknownFields is used to call the DisallowUnknownFields method on the JSON Decoder instance. DisallowUnknownFields causes the Decoder to return an error when the destination is a struct and the input contains object keys which do not match any non-ignored, exported fields in the destination.
var EnableDecoderUseNumber = false
EnableDecoderUseNumber is used to call the UseNumber method on the JSON Decoder instance. UseNumber causes the Decoder to unmarshal a number into an interface{} as a Number instead of as a float64.
Functions ¶
Types ¶
type Binding ¶
Binding describes the interface which needs to be implemented for binding the data present in the request such as JSON request body, query parameters or the form POST.
type BodyBinding ¶
BodyBinding adds BindBody method to Binding. BindBody is similar with Bind, but it reads the body from supplied bytes instead of req.Body.
type FieldBindError ¶
FieldBindError bind error
func (*FieldBindError) Error ¶
func (be *FieldBindError) Error() string
Error return a string representing the bind error
type FieldBindErrors ¶
type FieldBindErrors []*FieldBindError
FieldBindErrors bind errors
func (FieldBindErrors) Error ¶
func (bes FieldBindErrors) Error() string
Error return a string representing the bind errors
type JsonBindError ¶
type JsonBindError struct {
Err error
}
func (*JsonBindError) Error ¶
func (jbe *JsonBindError) Error() string
Error return a string representing the bind error
func (*JsonBindError) Unwrap ¶
func (jbe *JsonBindError) Unwrap() error
type URIBinding ¶
URIBinding adds BindUri method to Binding. BindUri is similar with Bind, but it reads the Params.
type XmlBindError ¶
type XmlBindError struct {
Err error
}
func (*XmlBindError) Error ¶
func (xbe *XmlBindError) Error() string
Error return a string representing the bind error
func (*XmlBindError) Unwrap ¶
func (xbe *XmlBindError) Unwrap() error