Documentation ¶
Index ¶
- Constants
- type Response
- func (r *Response) Close()
- func (r *Response) Copy() (*Response, error)
- func (r *Response) CopyBody() ([]byte, error)
- func (r *Response) CopyHeadersFrom(src *Response)
- func (r *Response) CopyWithStream() (*Response, error)
- func (r *Response) Error() error
- func (r *Response) HasError() bool
- func (r *Response) IsBuffered() bool
- func (r *Response) ReadBody() ([]byte, error)
- func (r *Response) Send(w http.ResponseWriter) error
- func (r *Response) SendContent(req *http.Request, w http.ResponseWriter) error
- func (r *Response) Set(headerName string, headerValue string)
- func (r *Response) SetContentType(contentType string) *Response
- func (r *Response) SetDebug(debug bool, obj *object.FileObject) *Response
- func (r *Response) Stream() io.ReadCloser
Constants ¶
const (
// HeaderContentType name of Content-Type header
HeaderContentType = "content-type"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Response ¶
type Response struct { StatusCode int // status code of response Headers http.Header // headers for response ContentLength int64 // if buffered response contains length of buffer, for streams it equal to -1 // contains filtered or unexported fields }
Response is helper struct for wrapping different storage response
func New ¶
func New(statusCode int, body io.ReadCloser) *Response
New create response object with io.ReadCloser
func NewNoContent ¶
NewNoContent create response object without content
func (*Response) CopyBody ¶
CopyBody read all content of response and returns it in []byte but doesn't change response object body
func (*Response) CopyHeadersFrom ¶
CopyHeadersFrom copy all headers from src response but body is omitted
func (*Response) CopyWithStream ¶
CopyWithStream should be used with not buffered response that contain stream it try duplicate response stream for multiple readers
func (*Response) IsBuffered ¶
IsBuffered check if response has access to original buffor
func (*Response) ReadBody ¶
ReadBody reads all content of response and returns []byte Content of the response is changed Such response shouldn't be Send to client
func (*Response) Send ¶
func (r *Response) Send(w http.ResponseWriter) error
Send write response to client using streaming
func (*Response) SendContent ¶ added in v0.3.0
SendContent use http.ServeContent to return response to client It can handle range and condition requests
func (*Response) SetContentType ¶
SetContentType update content type header of response
func (*Response) SetDebug ¶
func (r *Response) SetDebug(debug bool, obj *object.FileObject) *Response
SetDebug set flag indicating that response can including debug information
func (*Response) Stream ¶
func (r *Response) Stream() io.ReadCloser
Stream return io.Reader interferace from correct response content