Quick Fix c.ClientIP() mistakely parsing to 127.0.0.1 for who not using r.Run() to run http server (#2832)
This commit is contained in:
		
							
								
								
									
										4
									
								
								gin.go
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								gin.go
									
									
									
									
									
								
							@ -183,6 +183,7 @@ func New() *Engine {
 | 
				
			|||||||
		trees:                  make(methodTrees, 0, 9),
 | 
							trees:                  make(methodTrees, 0, 9),
 | 
				
			||||||
		delims:                 render.Delims{Left: "{{", Right: "}}"},
 | 
							delims:                 render.Delims{Left: "{{", Right: "}}"},
 | 
				
			||||||
		secureJSONPrefix:       "while(1);",
 | 
							secureJSONPrefix:       "while(1);",
 | 
				
			||||||
 | 
							trustedCIDRs:           []*net.IPNet{{IP: net.IP{0x0, 0x0, 0x0, 0x0}, Mask: net.IPMask{0x0, 0x0, 0x0, 0x0}}},
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	engine.RouterGroup.engine = engine
 | 
						engine.RouterGroup.engine = engine
 | 
				
			||||||
	engine.pool.New = func() interface{} {
 | 
						engine.pool.New = func() interface{} {
 | 
				
			||||||
@ -264,9 +265,8 @@ func (engine *Engine) NoRoute(handlers ...HandlerFunc) {
 | 
				
			|||||||
	engine.rebuild404Handlers()
 | 
						engine.rebuild404Handlers()
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// NoMethod sets the handlers called when NoMethod.
 | 
					// NoMethod sets the handlers called when Engine.HandleMethodNotAllowed = true.
 | 
				
			||||||
func (engine *Engine) NoMethod(handlers ...HandlerFunc) {
 | 
					func (engine *Engine) NoMethod(handlers ...HandlerFunc) {
 | 
				
			||||||
	engine.HandleMethodNotAllowed = true
 | 
					 | 
				
			||||||
	engine.noMethod = handlers
 | 
						engine.noMethod = handlers
 | 
				
			||||||
	engine.rebuild405Handlers()
 | 
						engine.rebuild405Handlers()
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -118,7 +118,10 @@ func TestMiddlewareNoMethodEnabled(t *testing.T) {
 | 
				
			|||||||
func TestMiddlewareNoMethodDisabled(t *testing.T) {
 | 
					func TestMiddlewareNoMethodDisabled(t *testing.T) {
 | 
				
			||||||
	signature := ""
 | 
						signature := ""
 | 
				
			||||||
	router := New()
 | 
						router := New()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// NoMethod disabled
 | 
				
			||||||
	router.HandleMethodNotAllowed = false
 | 
						router.HandleMethodNotAllowed = false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	router.Use(func(c *Context) {
 | 
						router.Use(func(c *Context) {
 | 
				
			||||||
		signature += "A"
 | 
							signature += "A"
 | 
				
			||||||
		c.Next()
 | 
							c.Next()
 | 
				
			||||||
@ -144,6 +147,7 @@ func TestMiddlewareNoMethodDisabled(t *testing.T) {
 | 
				
			|||||||
	router.POST("/", func(c *Context) {
 | 
						router.POST("/", func(c *Context) {
 | 
				
			||||||
		signature += " XX "
 | 
							signature += " XX "
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// RUN
 | 
						// RUN
 | 
				
			||||||
	w := performRequest(router, "GET", "/")
 | 
						w := performRequest(router, "GET", "/")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user