如果您尚未使用内容标头强制缓存无需验证。这可以通过使用以下标题触发KMZ文件来实现:
Cache-Control: max-age=0, must-revalidate
这将强制useragent立即考虑文件陈旧,这意味着在下一个请求时,它将不使用其缓存。检查您当前的标题以防万一,因为您可能已在该标题中有一些内容 - 并相应地进行调整。
有两种方法,您只需将时间戳或随机查询字符串附加到KMZ请求网址即可。这实质上使得对数据的每个请求都是唯一的,从而避免了任何缓存问题。
例如,您可以创建KMZ的URL并附加UNIX时间戳。
var kmz = "http://localhost/your.kmz?x=" + (new Date()).getTime();
产生这样的独特结果。
http://localhost/your.kmz?x=1365635454757 http://localhost/your.kmz?x=1365635478881
另一种方法是使用网络链接加载您的KMZ文件(如果您还没有这样做),这样您就可以准确控制何时再次检查新数据以避免缓存问题。这样页面根本不需要刷新 - 在kml文件中指向数据的简单网络链接可以通过设置 刷新间隔 到文件重新加载的秒数。
就像是。
<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2"> <NetworkLink> <name>your file</name> <flyToView>1</flyToView> <Link> <href>http://localhost/your.kmz</href> <refreshMode>onInterval</refreshMode> <refreshInterval>86400</refreshInterval><!-- 24 hours --> </Link> </NetworkLink> </kml>