Test_Ctx_Host_TrustedProxy() — fiber Function Reference
Architecture documentation for the Test_Ctx_Host_TrustedProxy() function in ctx_test.go from the fiber codebase.
Entity Profile
Dependency Diagram
graph TD 60cb36bb_400f_beec_43fd_08c4405548e7["Test_Ctx_Host_TrustedProxy()"] 7b3d4933_5ae3_f84d_ff6d_0cb34e268026["ctx_test.go"] 60cb36bb_400f_beec_43fd_08c4405548e7 -->|defined in| 7b3d4933_5ae3_f84d_ff6d_0cb34e268026 style 60cb36bb_400f_beec_43fd_08c4405548e7 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
ctx_test.go lines 2444–2506
func Test_Ctx_Host_TrustedProxy(t *testing.T) {
t.Parallel()
{
app := New(Config{TrustProxy: true, TrustProxyConfig: TrustProxyConfig{Proxies: []string{"0.0.0.0", "0.8.0.1"}}})
c := app.AcquireCtx(&fasthttp.RequestCtx{})
c.Request().SetRequestURI("http://google.com/test")
c.Request().Header.Set(HeaderXForwardedHost, "google1.com")
require.Equal(t, "google1.com", c.Host())
app.ReleaseCtx(c)
}
t.Run("TrimWhitespaceFromForwardedHost", func(t *testing.T) {
t.Parallel()
testCases := []struct {
name string
forwardedHost string
expectedHost string
}{
{
name: "leading whitespace with comma",
forwardedHost: " example.com, proxy1",
expectedHost: "example.com",
},
{
name: "trailing whitespace with comma",
forwardedHost: "example.com , proxy1",
expectedHost: "example.com",
},
{
name: "leading and trailing whitespace with comma",
forwardedHost: " example.com , proxy1",
expectedHost: "example.com",
},
{
name: "no whitespace with comma",
forwardedHost: "example.com, proxy1",
expectedHost: "example.com",
},
{
name: "single value with whitespace",
forwardedHost: " example.com ",
expectedHost: "example.com",
},
{
name: "leading comma",
forwardedHost: ",example.com",
expectedHost: "",
},
}
app := New(Config{TrustProxy: true, TrustProxyConfig: TrustProxyConfig{Proxies: []string{"0.0.0.0", "0.8.0.1"}}})
for _, tc := range testCases {
t.Run(tc.name, func(t *testing.T) {
t.Parallel()
c := app.AcquireCtx(&fasthttp.RequestCtx{})
defer app.ReleaseCtx(c)
c.Request().SetRequestURI("http://google.com/test")
c.Request().Header.Set(HeaderXForwardedHost, tc.forwardedHost)
require.Equal(t, tc.expectedHost, c.Host())
})
}
})
}
Domain
Subdomains
Defined In
Source
Frequently Asked Questions
What does Test_Ctx_Host_TrustedProxy() do?
Test_Ctx_Host_TrustedProxy() is a function in the fiber codebase, defined in ctx_test.go.
Where is Test_Ctx_Host_TrustedProxy() defined?
Test_Ctx_Host_TrustedProxy() is defined in ctx_test.go at line 2444.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free