IP и информация о местоположении - PullRequest
0 голосов
/ 11 марта 2012

Я искал ip & location для моего сайта. Я хочу знать, где мой посетитель зашел на сайт. В зависимости от его местоположения я сделаю несколько записей, покажу веб-сайт с другой темой и т. Д.

Я использую Asp.Net, я бы не использовал никаких провайдеров или инструментов. Я хочу сделать это самостоятельно. Как мне это сделать ? Что мне искать?

Ответы [ 2 ]

3 голосов
/ 11 марта 2012

Вам понадобится сторонний сервис или инструмент для сбора GeoLocation. Я предлагаю попробовать IPInfoDB, http://www.ipinfodb.com, который является бесплатным сервисом GeoLocation. После того, как вы зарегистрируетесь для получения ключа API, вы можете использовать сервис в C # следующим образом:

 public static GeoLocation HostIpToPlaceName(string ip)
    {
        string url = "http://api.ipinfodb.com/v2/ip_query.php?key={enterAPIKeyHere}&ip={0}&timezone=false";
        url = String.Format(url, ip);

        var result = XDocument.Load(url);

        var location = (from x in result.Descendants("Response")
                        select new GeoLocation
                        {
                            City = (string)x.Element("City"),
                            Region = (string)x.Element("RegionName"),
                            CountryId = (string)x.Element("CountryName")
                        }).First();

        return location;
    }

Существует множество сервисов, предоставляющих GeoLocation, но IPInfoDB бесплатен и хорошо работает для меня.

Вы также можете собрать эту информацию на стороне клиента, используя HTML5, как показано на http://html5demos.com/geo. Конечно, если вы хотите использовать эту информацию в своем коде, вам как-то придется передать ее бэкэнду.

2 голосов
/ 11 марта 2012

Концепция, о которой вы говорите, называется географическим положением. Суть в том, что есть базы данных, которые сопоставляют IP-адреса с ISP и ISP с физическими местоположениями. Вот поиск Google, который я использовал.

geo locate ip address

Эта страница была особенно интересна, потому что она предлагала хорошее объяснение и некоторые источники для бесплатных данных.

http://www.iplocation.net/

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...