(db geo.Reader, cache *Cache, profile bool)
| 64 | } |
| 65 | |
| 66 | func New(db geo.Reader, cache *Cache, profile bool) *Server { |
| 67 | return &Server{cache: cache, gr: db, profile: profile} |
| 68 | } |
| 69 | |
| 70 | func ipFromForwardedForHeader(v string) string { |
| 71 | before, _, ok := strings.Cut(v, ",") |