Как получить название города на основе IP-адреса в Java?

Можно ли узнать название города по IP-адресу в java?


person Abhishek Dhote    schedule 13.02.2010    source источник
comment
возможно, вам придется использовать какой-то API от Google   -  person ant    schedule 13.02.2010


Ответы (3)


вы используете jsp или что? для названия города на стороне клиента вы можете использовать API Google, который вернет вам географические данные пользователя, сопоставленные с IP-адресом. Как говорится в документации Google, вы можете получить следующее

При заполнении объект google.loader.ClientLocation заполняется следующими свойствами детализации на уровне метро:

* ClientLocation.latitude — supplies the low resolution latitude associated with the client's IP address
* ClientLocation.longitude — supplies the low resolution longitude associated with the client's IP address
* ClientLocation.address.city — supplies the name of the city associated with the client's IP address
* ClientLocation.address.country — supplies the name of the country associated with the client's IP address
* ClientLocation.address.country_code — supplies the name of the ISO 3166-1 country code associated with the client's IP address
* ClientLocation.address.region — supplies the country specific region name associated with the client's IP address

для получения дополнительной информации см. полную документацию по адресу http://code.google.com/apis/ajax/documentation/

person Umair Jabbar    schedule 13.02.2010
comment
Да, я использую JSP infact JSF, спасибо за ваш быстрый ответ, если вы можете предоставить мне фрагмент кода, это действительно поможет! - person Abhishek Dhote; 13.02.2010

Вы должны использовать такую ​​службу, как hostip.info, которая сопоставляет IP-адрес с его физическим местоположением и предлагает API для упрощения задачи.

Существует множество других платных и бесплатных услуг, которые можно найти на странице . Google.

person Guido    schedule 13.02.2010

Если онлайн-API, предложенный другими, не подходит для вашего приложения, я ранее успешно использовал MaxMind GeoLite City., который поставляется с Java API (среди многих других). Просто загрузите файлы базы данных, укажите на них свой код API и вперед. Просто и понятно.

person Cowan    schedule 14.02.2010
comment
эта услуга платная, если да, то не могли бы вы предложить любую бесплатную услугу. просто-flick.com - person Pedantic; 10.01.2012