- Posted On 18 July 2014
- By
- In Programming
This post contains information or you can say a quick how to guide for “How to get country name or location of site’s visitor by IP address in jQuery JavaScript”.
In one of my project it was a requirement that check IP address of the visitor and according to its country redirect him to different version of the same site so while working on that I came across several API’s by which you can get the location just by single jQuery ajax call or just by including a lightweight javascript.
Here I am sharing about some of those free Geo Location API’s with live sample. Make sure that you have included jQuery library reference as all below sample code is of jQuery.
Ip.CodeHelper.io
It’s a free Geo Location API Supporting JSON with JS Callback, PHP and other languages like .Net, C++, Java with SSL etc.
Just you need to include their JavaScript file (Approx. size 872 bytes) and you can get all information about clients location such as its country code, country name, city name and many more.
Below is the sample code.
<script type="text/javascript" src="http://www.codehelper.io/api/ips/?js"></script> <script type="text/javascript"> alert('Your country code is ' + codehelper_ip.Country); </script>
FreeGeoIp.Net
It’s a public REST API for searching geo location of IP addresses and host names. It has an internal database with geolocation information, which is queried via the API.
Just you need to send HTTP GET request with an IP as an optional parameter. It supports multiple formats such as csv, xml and json.
API usage is limited to 10,000 queries per hour. After reaching this limit, all requests will result in HTTP 403 (Forbidden) until the roll over.
If the usage limit is a problem, you can consider running your own instance of this system. It’s open source and freely available at GitHub.
Below is sample code.
<script type="text/javascript"> $.getJSON('http://freegeoip.net/json/', function (location) { alert('Your country code is ' + location.country_code); }); </script>
Hostip.info API
Hostip.info is an open project i.e. a community-based project to find geolocation by IP address. Database is free to use but they have mentioned on their home page that though this database provides accurate location still if you want more accurate location tracking for commercial project then you can consider using “MaxMind”. The Hostip.info operations (hosting and bandwidth costs, etc) are sponsored by Net Industries, LLC.
Below is the sample code.
<script type="text/javascript"> $.get("http://api.hostip.info/country.php", function (data) { alert('Your country code is ' + data); }); </script>
I have tested all above API toghether and found CodeHelper’s response is fast most of the times and below is the full code.
<!DOCTYPE html> <html> <head> <title>ImInfo.in - Tutorial to get geo location by IP in jquery/javascript</title> </head> <body> <div class="result"> </div> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <!--Using freegeoip.net API--> <script type="text/javascript"> $.getJSON('http://freegeoip.net/json/', function (location) { $(".result").append('<br>Using freegeoip.net : Your country code is ' + location.country_code + '<br>'); }); </script> <!--Using hostip.info API--> <script type="text/javascript"> $.get("http://api.hostip.info/country.php", function (data) { $(".result").append('<br>Using hostip.info : Your country code is ' + data + '<br>'); }); </script> <!--Using codehelper.io API--> <script type="text/javascript" src="http://www.codehelper.io/api/ips/?js"></script> <script type="text/javascript"> $(".result").append('<br>Using CodeHelper : Your country code is ' + codehelper_ip.Country + '<br>'); </script> </body> </html>
Let me know which is better in your opinion in comment section below. Thanks.
- Tags :
- ASP.NET
- MVC
- jQueryJavascript
Top 10 Visual Studio things which can boost developers coding speed
Visual Studio 2012 provides some coding features by which you can code faster if use them properly. This post will cover top 10 things among them to boost your development speed.
Visual Studio 2008 Shell and TFS integration
Visual Studio 2008 Shell and TFS integration is the problem for all newbies of BIDS and TFS. Here is the solution.
Assembla - Free and private repository to manage your source code online with SVN subversion hosting
With Assembla you can share source code with others online. Free & Private source code repository with SVN Subversion, Git & Perforce Hosting.
How to call click or any event only once in jQuery
Know how to execute an click event or any event only once for any element in jQuery. Perform action only once and even not required to unbind event.
Best CSS Gradient background generator tools online
Here are some best CSS gradient background code generator online tools using which you can create a cross browser css code for gradient backgrounds.