3

我能够在我的网站中获取用户的 IP 地址。现在我需要他的国家、城市、地区使用他的 IP 我得到.. 我正在尝试使用以下代码的谷歌地理定位 API,

    <div id="yourinfo"></div>
    <script type="text/javascript" src="http://www.google.com/jsapi?key=ABQIAAAAp04yNttlQq-7b4aZI_jL5hQYPm-xtd00hTQOC0OXpAMO40FHAxQMnH50uBbWoKVHwgpklyirDEregg"></script>
    <script type="text/javascript">
        if(google.loader.ClientLocation)
        {
            visitor_lat = google.loader.ClientLocation.latitude;
            visitor_lon = google.loader.ClientLocation.longitude;
            visitor_city = google.loader.ClientLocation.address.city;
            visitor_region = google.loader.ClientLocation.address.region;
            visitor_country = google.loader.ClientLocation.address.country;
            visitor_countrycode = google.loader.ClientLocation.address.country_code;
            document.getElementById('yourinfo').innerHTML = '<p>Lat/Lon: ' + visitor_lat + ' / ' + visitor_lon + '</p><p>Location: ' + visitor_city + ', ' + visitor_region + ', ' + visitor_country + ' (' + visitor_countrycode + ')</p>';
        }
        else
        {
            document.getElementById('yourinfo').innerHTML = '<p>Whoops!</p>';
        }
    </script>

真的,这段代码对我不起作用。它正在执行 else 部分并显示 Whoops!。如何获取用户的地理位置。任何其他想法让我知道。

我已经尝试过以下代码,它运行良好,但在免费版本中需要 6 秒的延迟。后来我才知道谷歌免费提供这项服务。所以我试了一下。

http://services.ipaddresslabs.com/iplocation/locateip?key=SAK58RWP983694534K4Z&ip=".$ClientIP

先感谢您

4

2 回答 2

0

在客户端使用它:

http://services.ipaddresslabs.com/iplocation/locateip?key=SAK58RWP983694534K4Z&ip=local-ip

它对我很好。

顺便说一句,上面的密钥被阻止了,你必须得到新的密钥。

于 2014-11-22T10:11:40.110 回答
0

如果您乐于使用 HTML5,您应该访问有关地理定位的本教程

于 2012-10-19T07:28:08.880 回答