показать местоположение IP на карте Google - PullRequest
0 голосов
/ 20 ноября 2010

Я пытаюсь получить местоположение пользователя с IP-адреса, когда пользователь входит в мое приложение django.но не знаю, как это сделать точно.Я использую GeoIP для этой цели.у меня вопрос, как написать представление для этой цели и как я могу показать местоположение IP на карте Google.

Ответы [ 2 ]

1 голос
/ 20 ноября 2010

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

Для API v2 google maps

http://econym.org.uk/gmap/basic1.htm

Для API v3 от Google Maps.

http://code.google.com/apis/maps/documentation/javascript/tutorial.html

0 голосов
/ 10 октября 2016

Отображая geoip на карте Google, вы можете использовать бесплатный сервис geoip на http://freegeoip.net/json/ и наносить на карту точки, как показано ниже:

    var geoLocations = getLocations();
    var center = getCenter();
    var map = new google.maps.Map(document.getElementById('googlemap'), 
    {
      zoom: 1,
      center: new google.maps.LatLng(center[0], center[1]),
      mapTypeId: google.maps.MapTypeId.SATELLITE 
    });
    var markerInfo = new google.maps.InfoWindow();
    var pointMarker, i;
    // Go through the location array...
    for (i = 0; i < geoLocations.length; i++) 
    { 
        // Add the marker.
        pointMarker = new google.maps.Marker(
            {
                position: new google.maps.LatLng(geoLocations[i][1], geoLocations[i][2]),
                map: map
            });
        // Add the information window when clicking the marker
        google.maps.event.addListener(pointMarker, 'click', (function(pointMarker, i) 
        {       
            return function() 
            {
                markerInfo.setContent(geoLocations[i][0] + ' -> ' + geoLocations[i][3]);
                markerInfo.open(map, pointMarker);
            }
        })(pointMarker, i));

        // Zoom on double click
        google.maps.event.addListener(pointMarker, 'dblclick', (function(pointMarker, i) 
        {       
            return function() 
            {
                map.setZoom(17);
            }
        })(pointMarker, i));            
    }

Пример кода для вызова бесплатного сервиса geoip с использованием pythonВы можете найти здесь: https://github.com/jamesrep/geoipard

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