diff --git a/binding/form.go b/binding/form.go index 9e9fc3de..b93c34cf 100644 --- a/binding/form.go +++ b/binding/form.go @@ -8,7 +8,7 @@ import ( "net/http" ) -const defaultMemory = 32 * 1024 * 1024 +const defaultMemory = 32 << 20 type formBinding struct{} type formPostBinding struct{} diff --git a/gin.go b/gin.go index 220f0401..d01b869e 100644 --- a/gin.go +++ b/gin.go @@ -455,9 +455,7 @@ func redirectTrailingSlash(c *Context) { if length := len(p); length > 1 && p[length-1] == '/' { req.URL.Path = p[:length-1] } - debugPrint("redirecting request %d: %s --> %s", code, p, req.URL.String()) - http.Redirect(c.Writer, req, req.URL.String(), code) - c.writermem.WriteHeaderNow() + redirectRequest(c, code) } func redirectFixedPath(c *Context, root *node, trailingSlash bool) bool { @@ -470,10 +468,16 @@ func redirectFixedPath(c *Context, root *node, trailingSlash bool) bool { code = http.StatusTemporaryRedirect } req.URL.Path = string(fixedPath) - debugPrint("redirecting request %d: %s --> %s", code, rPath, req.URL.String()) - http.Redirect(c.Writer, req, req.URL.String(), code) - c.writermem.WriteHeaderNow() + redirectRequest(c, code) return true } return false } + +func redirectRequest(c *Context, code int) { + rPath := c.Request.URL.Path + rURL := c.Request.URL.String() + debugPrint("redirecting request %d: %s --> %s", code, rPath, rURL) + http.Redirect(c.Writer, c.Request, rURL, code) + c.writermem.WriteHeaderNow() +}