forked from mirror/gin
use strings.Split instead of strings.IndexByte (#1406)
This commit is contained in:
parent
605aa1c30f
commit
8035359102
|
@ -539,14 +539,10 @@ func (c *Context) ShouldBindBodyWith(
|
||||||
func (c *Context) ClientIP() string {
|
func (c *Context) ClientIP() string {
|
||||||
if c.engine.ForwardedByClientIP {
|
if c.engine.ForwardedByClientIP {
|
||||||
clientIP := c.requestHeader("X-Forwarded-For")
|
clientIP := c.requestHeader("X-Forwarded-For")
|
||||||
if index := strings.IndexByte(clientIP, ','); index >= 0 {
|
clientIP = strings.TrimSpace(strings.Split(clientIP, ",")[0])
|
||||||
clientIP = clientIP[0:index]
|
if clientIP == "" {
|
||||||
|
clientIP = strings.TrimSpace(c.requestHeader("X-Real-Ip"))
|
||||||
}
|
}
|
||||||
clientIP = strings.TrimSpace(clientIP)
|
|
||||||
if clientIP != "" {
|
|
||||||
return clientIP
|
|
||||||
}
|
|
||||||
clientIP = strings.TrimSpace(c.requestHeader("X-Real-Ip"))
|
|
||||||
if clientIP != "" {
|
if clientIP != "" {
|
||||||
return clientIP
|
return clientIP
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue