Browse Source

Use UserAgent in server-side client ID to allow multiple clients on the same IP to count as new viewers

pull/5/head
Gabe Kangas 5 years ago
parent
commit
dfae6f56dc
  1. 8
      utils.go

8
utils.go

@ -74,18 +74,18 @@ func resetDirectories(configuration Config) { @@ -74,18 +74,18 @@ func resetDirectories(configuration Config) {
}
func getClientIDFromRequest(req *http.Request) string {
var ipAddress string
var clientID string
xForwardedFor := req.Header.Get("X-FORWARDED-FOR")
if xForwardedFor != "" {
ipAddress = xForwardedFor
clientID = xForwardedFor
} else {
ipAddressString := req.RemoteAddr
ipAddressComponents := strings.Split(ipAddressString, ":")
ipAddressComponents[len(ipAddressComponents)-1] = ""
ipAddress = strings.Join(ipAddressComponents, ":")
clientID = strings.Join(ipAddressComponents, ":")
}
// fmt.Println("IP address determined to be", ipAddress)
return ipAddress
return clientID + req.UserAgent()
}

Loading…
Cancel
Save