mirror of https://github.com/gofiber/fiber.git
parent
1fac52a42a
commit
c49faf9a8a
|
@ -76,6 +76,7 @@ func HTTPMiddleware(mw func(http.Handler) http.Handler) fiber.Handler {
|
|||
c.Request().Header.SetMethod(r.Method)
|
||||
c.Request().SetRequestURI(r.RequestURI)
|
||||
c.Request().SetHost(r.Host)
|
||||
c.Request().Header.SetHost(r.Host)
|
||||
for key, val := range r.Header {
|
||||
for _, v := range val {
|
||||
c.Request().Header.Set(key, v)
|
||||
|
@ -128,6 +129,7 @@ func handlerFunc(app *fiber.App, h ...fiber.Handler) http.HandlerFunc {
|
|||
req.Header.SetMethod(r.Method)
|
||||
req.SetRequestURI(r.RequestURI)
|
||||
req.SetHost(r.Host)
|
||||
req.Header.SetHost(r.Host)
|
||||
for key, val := range r.Header {
|
||||
for _, v := range val {
|
||||
req.Header.Set(key, v)
|
||||
|
|
|
@ -116,6 +116,7 @@ var (
|
|||
)
|
||||
|
||||
func Test_HTTPMiddleware(t *testing.T) {
|
||||
const expectedHost = "foobar.com"
|
||||
tests := []struct {
|
||||
name string
|
||||
url string
|
||||
|
@ -148,6 +149,7 @@ func Test_HTTPMiddleware(t *testing.T) {
|
|||
w.WriteHeader(http.StatusMethodNotAllowed)
|
||||
return
|
||||
}
|
||||
|
||||
r = r.WithContext(context.WithValue(r.Context(), TestContextKey, "okay"))
|
||||
r = r.WithContext(context.WithValue(r.Context(), TestContextSecondKey, "not_okay"))
|
||||
r = r.WithContext(context.WithValue(r.Context(), TestContextSecondKey, "okay"))
|
||||
|
@ -180,6 +182,7 @@ func Test_HTTPMiddleware(t *testing.T) {
|
|||
|
||||
for _, tt := range tests {
|
||||
req, err := http.NewRequestWithContext(context.Background(), tt.method, tt.url, nil)
|
||||
req.Host = expectedHost
|
||||
utils.AssertEqual(t, nil, err)
|
||||
|
||||
resp, err := app.Test(req)
|
||||
|
@ -188,6 +191,7 @@ func Test_HTTPMiddleware(t *testing.T) {
|
|||
}
|
||||
|
||||
req, err := http.NewRequestWithContext(context.Background(), fiber.MethodPost, "/", nil)
|
||||
req.Host = expectedHost
|
||||
utils.AssertEqual(t, nil, err)
|
||||
|
||||
resp, err := app.Test(req)
|
||||
|
@ -239,6 +243,8 @@ func testFiberToHandlerFunc(t *testing.T, checkDefaultPort bool, app ...*fiber.A
|
|||
utils.AssertEqual(t, expectedRequestURI, string(c.Context().RequestURI()), "RequestURI")
|
||||
utils.AssertEqual(t, expectedContentLength, c.Context().Request.Header.ContentLength(), "ContentLength")
|
||||
utils.AssertEqual(t, expectedHost, c.Hostname(), "Host")
|
||||
utils.AssertEqual(t, expectedHost, string(c.Request().Header.Host()), "Host")
|
||||
utils.AssertEqual(t, "http://"+expectedHost, c.BaseURL(), "BaseURL")
|
||||
utils.AssertEqual(t, expectedRemoteAddr, c.Context().RemoteAddr().String(), "RemoteAddr")
|
||||
|
||||
body := string(c.Body())
|
||||
|
|
Loading…
Reference in New Issue