Documentation ¶
Overview ¶
package forwarder implements http handler that forwards requests to remote server and serves back the response
Index ¶
Constants ¶
View Source
const ( XForwardedProto = "X-Forwarded-Proto" XForwardedFor = "X-Forwarded-For" XForwardedHost = "X-Forwarded-Host" XForwardedServer = "X-Forwarded-Server" Connection = "Connection" KeepAlive = "Keep-Alive" ProxyAuthenticate = "Proxy-Authenticate" ProxyAuthorization = "Proxy-Authorization" Te = "Te" // canonicalized version of "TE" Trailers = "Trailers" TransferEncoding = "Transfer-Encoding" Upgrade = "Upgrade" ContentLength = "Content-Length" )
Variables ¶
View Source
var HopHeaders = []string{ Connection, KeepAlive, ProxyAuthenticate, ProxyAuthorization, Te, Trailers, TransferEncoding, Upgrade, }
Hop-by-hop headers. These are removed when sent to the backend. http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html Copied from reverseproxy.go, too bad
Functions ¶
func ErrorHandler ¶
func ErrorHandler(h utils.ErrorHandler) optSetter
ErrorHandler is a functional argument that sets error handler of the server
func Rewriter ¶
func Rewriter(r ReqRewriter) optSetter
func RoundTripper ¶
func RoundTripper(r http.RoundTripper) optSetter
Types ¶
type HeaderRewriter ¶
Rewriter is responsible for removing hop-by-hop headers and setting forwarding headers
func (*HeaderRewriter) Rewrite ¶
func (rw *HeaderRewriter) Rewrite(req *http.Request)
type ReqRewriter ¶
ReqRewriter can alter request headers and body
Click to show internal directories.
Click to hide internal directories.