карта Google V3 - частная подача kml - PullRequest
1 голос
/ 12 августа 2010

Я пытаюсь перейти с виртуальной (VE) земли на карту Google (GM).

Довольно просто наложить ленту georss на карту в VE, а также в GM:

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

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

Спасибо.

Кристиан

1 Ответ

4 голосов
/ 12 августа 2010

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

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

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

...