Определение страны и города пользователя

Я собираюсь написать веб-приложение, которое должно определять страну и город пользователя. Например, когда пользователь заходит на сайт, веб-приложение должно отображать информацию на его/ее родном языке, в нем должна быть указана его/ее страна (и город, не знаю, возможно это или нет). Знаете ли вы какую-либо базу данных (базу данных IP) или какой-либо другой способ сделать это?


person user873286    schedule 08.03.2012    source источник


Ответы (3)


Попробуйте http://www.netimpact.com/faq.

Это бесплатно для 250 запросов в течение 24 часов.

Или вы можете использовать простой код javascript, который взаимодействует с браузером клиента, чтобы определить точную широту и долготу.

// Check for geolocation support
if (navigator.geolocation) {
    // Use method getCurrentPosition to get coordinates
    navigator.geolocation.getCurrentPosition(function (position) {
        // Access them accordingly
        alert(position.coords.latitude + ", " + position.coords.longitude);
    });
}

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

person jerrymouse    schedule 08.03.2012
comment
Это делает вас зависимым от третьей стороны, которую вам нужно будет запрашивать каждый раз. Использование локальной базы данных с этой информацией сделает ваше приложение быстрее, надежнее и без ограничений по количеству запросов :) - person Stian; 08.03.2012

Вы можете использовать бесплатную базу данных MaxMind GeoLite. Примеры и файл базы данных можно бесплатно загрузить по адресу http://www.maxmind.com/app/geolitecity

Я думаю, что он обновляется примерно каждый месяц. Пользуемся много лет и нареканий нет!

person Stian    schedule 08.03.2012
comment
Я согласен — бесплатный GeoLite от MaxMind — это то, что вам нужно. Но имейте в виду, что вы можете получить неправильное местоположение для пользователей в корпоративной сети (вы получите местоположение корпоративного концентратора, а не пользователя). Это относится ко всем решениям для поиска IP-адресов, а не только к MaxMind. - person Kevin; 09.03.2012

http://www.hostip.info/
Hostip.info — это проект сообщества, геолокацию IP-адресов, делая базу данных свободно доступной (см. ниже), но для ее работы необходимо указать свой город.

person amstegraf    schedule 22.06.2012