API карт Google v3 - изменения слоя KML - PullRequest
7 голосов
/ 28 октября 2011

Я использую google.maps.KmlLayer ('http://mywebsite.com/my.kml') для установки объектов из файла KML. Это работает, но когда я изменяю kml и пытаюсь обновить веб-сайт ... У меня все еще такое же состояние, как и раньше ...без моих изменений. Когда я меняю имя файла на my2.kml - оно работает ... Google кеширует мой kml? Что мне нужно сделать, чтобы обновить изменения с тем же именем файла kml?

Ответы [ 2 ]

10 голосов
/ 30 октября 2011

Серверы Google фактически кэшируют данные KML. Поскольку серверы Google обрабатывают ваш KML, а не браузер, очистка кэша не поможет. Вот почему изменение имени файла работает. Чтобы предотвратить кэширование, добавьте к вашему URL-адресу KML, который вы создаете, слой KML, например случайное число или текущую временную метку. http://mywebsite.com/my.kml?rev=323626252346, где значение rev меняется при каждом обновлении страницы. Вы также можете написать Javascript, чтобы щелкнуть кнопку, которая обновляет URL-адрес объекта KML-слоя, устраняя необходимость обновления страницы.

5 голосов
/ 08 марта 2016

Да, серверы Google кэшируют данные KML. Так что избегайте этого кеширования, измените URL-адрес kml на

"http://www.kmlsource.com/foo.kml?dummy=" + (new Date()).getTime();

Это всегда создаст новый веб-сайт, и проблема с кэшированием будет решена.

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