Php. Javascript. Как определить локацию пользователя?


Совсем недавно нужно было решить задачу, связанную с показом различного контента для посетителей с разных стран. Решил ее при помощи API Яндекса, но какая-то «костыльность» решения не давала мне покоя.

И вот я нашел до ужаса простое решение этой задачи, которым хочу поделиться.

Для определения местоположения будем использовать сторонний ресурс — http://ipinfo.io/. Обращаясь к нему мы можем получить детальную информацию о нашем расположении вот в очень удобном виде.

Бесценной особенностью является возможность получения информации и на back, и на front-частях.

Пример обращения на php:

$ip = $_SERVER['REMOTE_ADDR'];
$details = json_decode(file_get_contents("http://ipinfo.io/{$ip}/json"));
echo $details->city; 

Пример обращения на javascript (jQuery):

$.get("http://ipinfo.io", function(response) {
    console.log(response.city);
}, "jsonp");

Решение нашел здесь и тут же автор предлагает более детальный и «живой» пример работы — http://jsfiddle.net/zK5FN/2/.

, , , ,

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *