func GetUserFromCookieOrAuthHeader()

in images/controller/pkg/broker.go [245:271]


func GetUserFromCookieOrAuthHeader(r *http.Request, cookieName, authHeaderName string) string {
	res := ""

	if len(cookieName) > 0 {
		cookie, err := r.Cookie(cookieName)
		if err == nil {
			toks := strings.Split(cookie.Value, "#")
			if len(toks) == 2 {
				res = toks[0]
			}
		} else {
			// search for user in query parameters.
			if keys, ok := r.URL.Query()[cookieName]; ok && len(keys[0]) > 0 {
				toks := strings.Split(keys[0], "#")
				if len(toks) == 2 {
					res = toks[0]
				}
			}
		}
	}

	if len(res) == 0 {
		res = r.Header.Get(authHeaderName)
	}

	return res
}