避免使用来自Mapbox的缓存矢量瓦片。

9
我在使用Mapbox-GL-JS时遇到了一个问题:浏览器中有缓存的矢量瓦片,导致最新更改无法显示。通常的解决方法是在瓦片字符串末尾附加一个唯一的字符串(例如example.com/tiles/1/2/3.png?update=1),但我不确定如何在Mapbox-GL-JS中实现此功能,因为它会根据图层的组合构建瓦片字符串。
...
metadata": {
    "mapbox:autocomposite": true,
    "mapbox:type": "default"
  },
  "sources": {
    "mapbox": {
      "url": "mapbox://mapbox.satellite",
      "type": "raster",
      "tileSize": 256
    },
    "composite": {
      "url": "mapbox://stevage.9vj4wkw3,mapbox.mapbox-streets-v7,stevage.ab95cml8",
      "type": "vector"
    }
  },

有没有办法在URL中强制添加一些额外的文本?
1个回答

15

mapbox://结尾处的任何查询参数都将被保留。您可能会发现有趣的fresh参数,我们已经特殊处理以跳过大多数API-side缓存。

...
metadata": {
    "mapbox:autocomposite": true,
    "mapbox:type": "default"
  },
  "sources": {
    "mapbox": {
      "url": "mapbox://mapbox.satellite?fresh=true",
      "type": "raster",
      "tileSize": 256
    },
    "composite": {
      "url": "mapbox://stevage.9vj4wkw3,mapbox.mapbox-streets-v7,stevage.ab95cml8?fresh=true",
      "type": "vector"
    }
  },

1
是的,我会觉得非常有趣 :) 谢谢! - Steve Bennett

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接