Merge branch 'donnpebe-fix' into develop

This commit is contained in:
Javier Provecho Fernandez 2015-10-02 09:54:43 +02:00
commit fdc54c9c7f
2 changed files with 6 additions and 2 deletions

View File

@ -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.

View File

@ -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")