Merge branch 'fix' of https://github.com/donnpebe/gin into donnpebe-fix
This commit is contained in:
		@ -8,6 +8,7 @@ import (
 | 
				
			|||||||
	"errors"
 | 
						"errors"
 | 
				
			||||||
	"io"
 | 
						"io"
 | 
				
			||||||
	"math"
 | 
						"math"
 | 
				
			||||||
 | 
						"net"
 | 
				
			||||||
	"net/http"
 | 
						"net/http"
 | 
				
			||||||
	"strings"
 | 
						"strings"
 | 
				
			||||||
	"time"
 | 
						"time"
 | 
				
			||||||
@ -291,7 +292,10 @@ func (c *Context) ClientIP() string {
 | 
				
			|||||||
			return clientIP
 | 
								return clientIP
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return strings.TrimSpace(c.Request.RemoteAddr)
 | 
						if ip, _, err := net.SplitHostPort(strings.TrimSpace(c.Request.RemoteAddr)); err == nil {
 | 
				
			||||||
 | 
							return ip
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						return ""
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// ContentType returns the Content-Type header of the request.
 | 
					// ContentType returns the Content-Type header of the request.
 | 
				
			||||||
 | 
				
			|||||||
@ -520,7 +520,7 @@ func TestContextClientIP(t *testing.T) {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	c.Request.Header.Set("X-Real-IP", " 10.10.10.10  ")
 | 
						c.Request.Header.Set("X-Real-IP", " 10.10.10.10  ")
 | 
				
			||||||
	c.Request.Header.Set("X-Forwarded-For", "  20.20.20.20, 30.30.30.30")
 | 
						c.Request.Header.Set("X-Forwarded-For", "  20.20.20.20, 30.30.30.30")
 | 
				
			||||||
	c.Request.RemoteAddr = "  40.40.40.40 "
 | 
						c.Request.RemoteAddr = "  40.40.40.40:42123 "
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	assert.Equal(t, c.ClientIP(), "10.10.10.10")
 | 
						assert.Equal(t, c.ClientIP(), "10.10.10.10")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user