Documentation ¶
Overview ¶
Package fasthttpadaptor provides helper functions for converting net/http request handlers to fasthttp request handlers.
Index ¶
- func ConvertRequest(ctx *fasthttp.RequestCtx, r *http.Request, forServer bool) error
- func NewFastHTTPHandler(h http.Handler) fasthttp.RequestHandler
- func NewFastHTTPHandlerFunc(h http.HandlerFunc) fasthttp.RequestHandler
- type NetHTTPResponseWriter
- func (w *NetHTTPResponseWriter) Flush()
- func (w *NetHTTPResponseWriter) Header() http.Header
- func (w *NetHTTPResponseWriter) SetUserValue(key any, value any)
- func (w *NetHTTPResponseWriter) StatusCode() int
- func (w *NetHTTPResponseWriter) Write(p []byte) (int, error)
- func (w *NetHTTPResponseWriter) WriteHeader(statusCode int)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConvertRequest ¶
ConvertRequest converts a fasthttp.Request to an http.Request. forServer should be set to true when the http.Request is going to passed to a http.Handler.
The http.Request must not be used after the fasthttp handler has returned! Memory in use by the http.Request will be reused after your handler has returned!
func NewFastHTTPHandler ¶
func NewFastHTTPHandler(h http.Handler) fasthttp.RequestHandler
NewFastHTTPHandler wraps net/http handler to fasthttp request handler, so it can be passed to fasthttp server.
While this function may be used for easy switching from net/http to fasthttp, it has the following drawbacks comparing to using manually written fasthttp request handler:
- A lot of useful functionality provided by fasthttp is missing from net/http handler.
- net/http -> fasthttp handler conversion has some overhead, so the returned handler will be always slower than manually written fasthttp handler.
So it is advisable using this function only for quick net/http -> fasthttp switching. Then manually convert net/http handlers to fasthttp handlers according to https://github.com/valyala/fasthttp#switching-from-nethttp-to-fasthttp .
func NewFastHTTPHandlerFunc ¶
func NewFastHTTPHandlerFunc(h http.HandlerFunc) fasthttp.RequestHandler
NewFastHTTPHandlerFunc wraps net/http handler func to fasthttp request handler, so it can be passed to fasthttp server.
While this function may be used for easy switching from net/http to fasthttp, it has the following drawbacks comparing to using manually written fasthttp request handler:
- A lot of useful functionality provided by fasthttp is missing from net/http handler.
- net/http -> fasthttp handler conversion has some overhead, so the returned handler will be always slower than manually written fasthttp handler.
So it is advisable using this function only for quick net/http -> fasthttp switching. Then manually convert net/http handlers to fasthttp handlers according to https://github.com/valyala/fasthttp#switching-from-nethttp-to-fasthttp .
Types ¶
type NetHTTPResponseWriter ¶
type NetHTTPResponseWriter struct {
// contains filtered or unexported fields
}
func (*NetHTTPResponseWriter) Flush ¶ added in v1.10.5
func (w *NetHTTPResponseWriter) Flush()
func (*NetHTTPResponseWriter) Header ¶
func (w *NetHTTPResponseWriter) Header() http.Header
func (*NetHTTPResponseWriter) SetUserValue ¶
func (w *NetHTTPResponseWriter) SetUserValue(key any, value any)
func (*NetHTTPResponseWriter) StatusCode ¶
func (w *NetHTTPResponseWriter) StatusCode() int
func (*NetHTTPResponseWriter) WriteHeader ¶
func (w *NetHTTPResponseWriter) WriteHeader(statusCode int)