views:

499

answers:

5

What the best/accurate/free service to convert the IP from the following script to country/city/lat/long?

$.getJSON("http://jsonip.appspot.com?callback=?",
    function(data){
       alert( "Data Returned: " + data.ip);
  });
+4  A: 

As it goes I was researching this the other day.

Couple of potential options:

Maxmind do a number of APIs but their JS service doesn't look up to task to my mind.

annakata
+1  A: 

This one for JSON
This one for XML

rodrigoap
A: 

Rather than using a 3rd-party API, I prefer to have the data locally. You potentially trade off a bit of accuracy for less latency and a more robust application.

The best free database I have found is IP address geolocation SQL database.

RedFilter
A: 

IPInfoDB offers a nice service. They do not have their own Java Rest API but there is one that is already available here

Jason
+1  A: 

I recommend installing something locally on your server as it will make a huge difference in terms of speed.

This one is great: MaxMind's GeoIP, and they have a free version with just a little less accuracy as the paid version.

You can download SQL tables or use a compiled C version with an Apache or PHP plugin.

MaxMind GeoIP City or MaxMind GeoIP Country

philfreo