在我的基於PHP的應用程序中,當用戶根據IP地址登錄到webapp時,我想捕獲用戶機器的位置。如何根據IP地址獲取用戶機器的精確經緯度
我跟着這個方法:
$url = "http://freegeoip.net/json/$ip";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
$data = curl_exec($ch);
curl_close($ch);
我得到的緯度和經度值,但這些都不是確切的,相反,他們是絕對的。在回覆中,我得到像這樣的JSON:
{
["ip"]=> string(11) "59.90.210.9"
["country_code"]=> string(2) "IN"
["country_name"]=> string(5) "India"
["region_code"]=> string(0) ""
["region_name"]=> string(0) ""
["city"]=> string(0) ""
["zip_code"]=> string(0) ""
["time_zone"]=> string(12) "Asia/Kolkata"
["latitude"]=> int(20)
["longitude"]=> int(77)
["metro_code"]=> int(0)
}
沒有城市沒有拉鍊的東西。有沒有更好的API來根據需要獲得確切的東西?預先感謝任何迴應。
IP會*永遠不會*給你一個確切的位置,你的幸運,如果城市是正確的 – 2015-06-20 06:24:06