2010-08-12 2 views
1

Я пытаюсь перейти с виртуальной земли (VE) на карту google (GM).google map V3 - private kml feed

Это довольно легко наложить GeoRSS фид над картой в VE, а также в GM:

var georssLayer = new google.maps.KmlLayer('www.bla.com/kmls/k1'); 
georssLayer.setMap(map); 

К сожалению, Google требует «Kml адрес», чтобы быть открытыми. Что я могу сделать для достижения той же функциональности, если мой адрес не является общедоступным (например, когда пользователь должен войти в систему до того, как [он] сможет пользоваться картой)?

Спасибо.

Christian

ответ

4

Я думал об этой проблеме до и это решение, которое я придумал (хотя я не выполнил его еще нет).

  • Код сервера, который генерирует html-страницу, в которую встроена карта, должен генерировать временный токен, привязанный к текущему пользователю в базе данных.
  • Сделать адрес общественности KML, но передать временный маркер к нему в качестве параметра запроса
  • Включите логику в коде сервера KML, который проверяет переданный маркер, чтобы убедиться, действительно
  • Маркер должен быть действителен только в течение ограниченного времени.

Это решение будет немного менее безопасным, чем полная идентификация id/pw на ресурсе KML. Но, используя кратковременный токен, он может быть достаточно хорошим, в зависимости от ваших требований.

+0

Интересное решение. Не должно быть проблемой. – cs0815