0

希望有人可以帮助我解决这个问题。我正在尝试实施一个全球站点,因此正在寻找一种检测用户位置的方法。我不想使用任何 ip2location 网络服务或下载数据库或要求用户“共享位置”。

无论如何,我找到了这个项目。我实现了它,它正确检测到我的位置(美国)。然而,对于我在德国的朋友来说,它为 Country 返回了一个空字符串。

http://javainetlocator.sourceforge.net/。我正在使用这里的 jar 文件。

我正在使用 CF 11 并且我的代码已开启

http://roomdu.com/geolocator/

请给我建议

4

1 回答 1

3

某些德国 IP 不在 InetAddressLocator 提供的 IP 数据库中。您可以通过命令行以交互模式运行它来查看这一点。

Codemans-MacBook:ColdFusionMX-geoLocator-2.23 Codeman$ java -jar InetAddressLocator.jar

  InetAddressLocator - Java country lookup.
  -----------------------------------------
  Copyright (C) 2003-05 Nigel Wetters Gourlay and Paul Hastings
  InetAddressLocator comes with ABSOLUTELY NO WARRANTY.
  This is free software, and you are welcome to redistribute
  it under the GNU General Public License.

  Running benchmark. Please be patient...
    Speed: 1260307 ops/sec
           (61% of address space is allocated)

  Locating localhost
    Host: /192.168.15.238
    Country: Unknown (private network)

  enter host ('q' to quit) > 5.199.139.54
    Host: /5.199.139.54
    Country: Unknown
于 2014-11-15T19:14:43.567 回答