New() — fiber Function Reference
Architecture documentation for the New() function in redirect.go from the fiber codebase.
Entity Profile
Dependency Diagram
graph TD 626dec24_6efa_77d1_905e_a451501edb5c["New()"] 1adff06c_cc29_c445_b25e_6b98b1764065["redirect.go"] 626dec24_6efa_77d1_905e_a451501edb5c -->|defined in| 1adff06c_cc29_c445_b25e_6b98b1764065 cfc7cdf8_a141_3bfb_dfdf_5c02c2928ff4["captureTokens()"] 626dec24_6efa_77d1_905e_a451501edb5c -->|calls| cfc7cdf8_a141_3bfb_dfdf_5c02c2928ff4 style 626dec24_6efa_77d1_905e_a451501edb5c fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
middleware/redirect/redirect.go lines 13–43
func New(config ...Config) fiber.Handler {
cfg := configDefault(config...)
// Initialize
cfg.rulesRegex = map[*regexp.Regexp]string{}
for k, v := range cfg.Rules {
k = strings.ReplaceAll(k, "*", "(.*)")
k += "$"
cfg.rulesRegex[regexp.MustCompile(k)] = v
}
// Middleware function
return func(c fiber.Ctx) error {
// Next request to skip middleware
if cfg.Next != nil && cfg.Next(c) {
return c.Next()
}
// Rewrite
for k, v := range cfg.rulesRegex {
replacer := captureTokens(k, c.Path())
if replacer != nil {
queryString := utils.UnsafeString(c.RequestCtx().QueryArgs().QueryString())
if queryString != "" {
queryString = "?" + queryString
}
return c.Redirect().Status(cfg.StatusCode).To(replacer.Replace(v) + queryString)
}
}
return c.Next()
}
}
Domain
Subdomains
Defined In
Calls
Source
Frequently Asked Questions
What does New() do?
New() is a function in the fiber codebase, defined in middleware/redirect/redirect.go.
Where is New() defined?
New() is defined in middleware/redirect/redirect.go at line 13.
What does New() call?
New() calls 1 function(s): captureTokens.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free