从appcache中排除地图图块

时间:2013-08-09 23:04:04

标签: html5 map leaflet openstreetmap html5-appcache

我正在尝试通过appcache与网站corvallistrails.org.实现离线使用我正在托管缓存的所有图像和资源都很完美,但是当我尝试使用该网站时,来自opencyclemap.org的地图图块无法加载。它们未在.appcache文件中指定。我在*下添加了条目http:/*https://**.opencyclemap.org/*opencyclemap.org/*NETWORK:,但无济于事。我的研究结果没有发现。我只是想强制浏览器每次都通过网络加载地图图块。我在清单中输入了什么样的条目以产生这样的结果?

1 个答案:

答案 0 :(得分:0)

NETWORK部分要求离线可以使用更新的资源(您可以在那里使用*模式)。

CACHE部分要求资源将被缓存,您必须将所有缓存的资源放在那里并且不能使用*模式,因为浏览器无法解析它必须下载的资源。在那里,您可以将资源设置为另一个域http://tile.example.com/zoom/x/y.png

FALLBACK部分要求在应用程序脱机时必须将资源映射到另一个,您可以只在那里设置自托管资源。

如果你想让地图离线,你必须将所有需要的瓷砖放到CACHE部分,但是它非常匹配瓷砖并且需要花费很多时间才能下载所有(数千个瓷砖和20-50 Mb用于百万城市)。可能你不能使用localStorage,因为它的大小很小(5 Mb没有subdomians和iframes hacks)。我使用IndexedDBWeb SQLhttps://github.com/tbicr/OfflineMap离线进行测试,但没有最佳的存储实施。