Documentation ¶
Index ¶
- func CheckAuthFlag(w http.ResponseWriter, r *http.Request, expectedKey *flagutil.Password) bool
- func CheckBasicAuth(w http.ResponseWriter, r *http.Request) bool
- func EnableCORS(w http.ResponseWriter, _ *http.Request)
- func Errorf(w http.ResponseWriter, r *http.Request, format string, args ...any)
- func GetPathPrefix() string
- func GetQuotedRemoteAddr(r *http.Request) string
- func GetRequestURI(r *http.Request) string
- func IsTLS(idx int) bool
- func LogError(req *http.Request, errStr string)
- func Redirect(w http.ResponseWriter, url string)
- func Serve(addrs []string, useProxyProtocol *flagutil.ArrayBool, rh RequestHandler)
- func Stop(addrs []string) error
- func WriteAPIHelp(w io.Writer, pathList [][2]string)
- type ErrorWithStatusCode
- type Path
- type RequestHandler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckAuthFlag ¶ added in v1.86.0
CheckAuthFlag checks whether the given authKey is set and valid
Falls back to checkBasicAuth if authKey is not set
func CheckBasicAuth ¶ added in v1.86.0
func CheckBasicAuth(w http.ResponseWriter, r *http.Request) bool
CheckBasicAuth validates credentials provided in request if httpAuth.* flags are set returns true if credentials are valid or httpAuth.* flags are not set
func EnableCORS ¶
func EnableCORS(w http.ResponseWriter, _ *http.Request)
EnableCORS enables https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS on the response.
func GetPathPrefix ¶ added in v1.50.0
func GetPathPrefix() string
GetPathPrefix - returns http server path prefix.
func GetQuotedRemoteAddr ¶ added in v1.39.3
GetQuotedRemoteAddr returns quoted remote address.
func GetRequestURI ¶ added in v1.63.0
GetRequestURI returns requestURI for r.
func IsTLS ¶ added in v1.34.6
IsTLS indicates is tls enabled or not for -httpListenAddr at the given idx.
func Redirect ¶ added in v1.82.0
func Redirect(w http.ResponseWriter, url string)
Redirect redirects to the given url.
func Serve ¶
func Serve(addrs []string, useProxyProtocol *flagutil.ArrayBool, rh RequestHandler)
Serve starts an http server on the given addrs with the given optional rh.
By default all the responses are transparently compressed, since egress traffic is usually expensive.
The compression can be disabled by specifying -http.disableResponseCompression command-line flag.
If useProxyProtocol is set to true for the corresponding addr, then the incoming connections are accepted via proxy protocol. See https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt
func WriteAPIHelp ¶ added in v1.59.0
WriteAPIHelp writes pathList to w in HTML format.
Types ¶
type ErrorWithStatusCode ¶ added in v1.27.0
ErrorWithStatusCode is error with HTTP status code.
The given StatusCode is sent to client when the error is passed to Errorf.
func (*ErrorWithStatusCode) Error ¶ added in v1.27.0
func (e *ErrorWithStatusCode) Error() string
Error implements error interface.
func (*ErrorWithStatusCode) Unwrap ¶ added in v1.37.4
func (e *ErrorWithStatusCode) Unwrap() error
Unwrap returns e.Err.
This is used by standard errors package. See https://golang.org/pkg/errors
type Path ¶ added in v1.64.0
Path contains the following path structure: /{prefix}/{authToken}/{suffix}
It is compatible with SaaS version.
type RequestHandler ¶
type RequestHandler func(w http.ResponseWriter, r *http.Request) bool
RequestHandler must serve the given request r and write response to w.
RequestHandler must return true if the request has been served (successfully or not).
RequestHandler must return false if it cannot serve the given request. In such cases the caller must serve the request.