Home / Function/ FromAuthHeader() — fiber Function Reference

FromAuthHeader() — fiber Function Reference

Architecture documentation for the FromAuthHeader() function in extractors.go from the fiber codebase.

Entity Profile

Dependency Diagram

graph TD
  53248ffc_cf9c_4161_f81e_49826d27b3ab["FromAuthHeader()"]
  9369d97d_10d6_c835_81b9_8542715b2822["extractors.go"]
  53248ffc_cf9c_4161_f81e_49826d27b3ab -->|defined in| 9369d97d_10d6_c835_81b9_8542715b2822
  06f0b6b5_35c9_7752_bd0f_5104cd1998e0["isValidToken68()"]
  53248ffc_cf9c_4161_f81e_49826d27b3ab -->|calls| 06f0b6b5_35c9_7752_bd0f_5104cd1998e0
  style 53248ffc_cf9c_4161_f81e_49826d27b3ab fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

extractors/extractors.go lines 115–153

func FromAuthHeader(authScheme string) Extractor {
	return Extractor{
		Extract: func(c fiber.Ctx) (string, error) {
			authHeader := c.Get(fiber.HeaderAuthorization)
			if authHeader == "" {
				return "", ErrNotFound
			}

			// Check if the header starts with the specified auth scheme
			if authScheme != "" {
				schemeLen := len(authScheme)
				if len(authHeader) <= schemeLen || !utils.EqualFold(authHeader[:schemeLen], authScheme) {
					return "", ErrNotFound
				}
				rest := authHeader[schemeLen:]
				if rest == "" || rest[0] != ' ' {
					return "", ErrNotFound
				}

				// Extract token after the required space
				token := rest[1:]
				if token == "" {
					return "", ErrNotFound
				}

				if !isValidToken68(token) {
					return "", ErrNotFound
				}

				return token, nil
			}

			return authHeader, nil
		},
		Key:        fiber.HeaderAuthorization,
		Source:     SourceAuthHeader,
		AuthScheme: authScheme,
	}
}

Domain

Subdomains

Frequently Asked Questions

What does FromAuthHeader() do?
FromAuthHeader() is a function in the fiber codebase, defined in extractors/extractors.go.
Where is FromAuthHeader() defined?
FromAuthHeader() is defined in extractors/extractors.go at line 115.
What does FromAuthHeader() call?
FromAuthHeader() calls 1 function(s): isValidToken68.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free