Определить город по IP адресу

Писал ранее об API ipinfo.io. Сервис позволяет вытащить как гео координаты, так и названия города, региона, страны. Единственный недостаток — информация на английском языке. В данной статье рассмотрим пару примеров использования сервиса.

Обращение к ipinfo.io из PHP

Нас интересует расшифровка ip адреса посетителя, потому адрес запроса должен его содержать в явном виде. Иначе мы получим гео информацию о сервере, где выполняется PHP код.

Для выполнения запроса используем библиотеку curl.

Пример ответа сервера:

Состав атрибутов не всегда полон, названия города может и не быть в их числе. Чаще всего имеем данные о стране и гео-локации.

Поддерживается и ipv6 формат адресов.

Если требуются русские (кириллические) названия и территориальное определение адресов, ограниченных РФ, то возможно вам подойдет другой сервис — IPGeoBase.

IPinfo разрешает выполнить 1000 запросов/сутки бесплатно. Не сложно реализовать кеширование обращений к серверу и/или отсечку ботов, чтобы не тратить квоту зря.

Обращение к ipinfo.io из JS (jQuery)

На сайте ipinfo.io есть множество примеров. Я кое что собрал из них, кое что дополнил, в итоге получилась вот такая рабочая заготовка.

Типичные задачи

В собственных проектах мне бòльшую ценность представляют гео-координаты, чем название города, по ним я уже ищу ближайший объект из базы сайта (филиал, точку продаж и т.п.).

В общем то вы можете перекодировать полученные гео-координаты в ближайший адрес, используя API карт Яндекс или Гугл.

Написать комментарий

Мало букафф? Читайте есчо !

Инициализация карты google после изменения размеров контейнера карты

Февраль 2, 2018 г.

Столкнулся с данной проблемой в своей работе. Опишу более подробно. Объект Гугл карты, при изменении размеров контейнера, в котором рендерится карта, не актуализирует внутренние размеры поля, от которых зависит центровка. К примеру, при уменьшении ...

Читать

Используем API Яндекс карт для геокодирования

Май 1, 2017 г.

Функция geocode из API карт Яндекс работает в обе стороны. Получив строку адреса - сервис будет искать известные адреса и сообщит вам гео-коордитаны среди ...

Читать

 

Комментарии к «Определить город по IP адресу»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: