Openlayers mapquest直接磁贴访问已停止

Openlayers mapquest直接磁贴访问已停止,openlayers,mapquest,Openlayers,Mapquest,截至2016年7月11日,MapQuest已停止直接访问其互动程序。他们似乎只支持传单、iOS和Android SDK。你知道如何让Openlayers再次使用MapQuest吗?或者我们应该考虑另一种选择吗?谢谢。目前,我暂时切换到Bings地图作为解决办法。是的,它还需要一个api密钥,但至少它与OL3一起工作。当这个问题在任何感兴趣的恐慌传单用户中流行时,这是一个快速的解决方案 现在,您需要下载并包含(不要忘记您的密钥)MapQuest传单插件,而不是直接通过传单创建地图层 <scr

截至2016年7月11日,MapQuest已停止直接访问其互动程序。他们似乎只支持传单、iOS和Android SDK。你知道如何让Openlayers再次使用MapQuest吗?或者我们应该考虑另一种选择吗?谢谢。

目前,我暂时切换到Bings地图作为解决办法。是的,它还需要一个api密钥,但至少它与OL3一起工作。

当这个问题在任何感兴趣的恐慌传单用户中流行时,这是一个快速的解决方案

现在,您需要下载包含(不要忘记您的密钥)MapQuest传单插件,而不是直接通过传单创建地图层

<script src="https://www.mapquestapi.com/sdk/leaflet/v2.2/mq-map.js?key=KEY"></script>

发生此问题的原因是。。 无需钥匙即可直接访问MapQuest地图互动程序将于2016年7月11日结束。获取密钥和SDK的详细信息

如需确认,您可以访问以下URL

使用OSM源:

var osmLayer = new ol.layer.Tile({
    source: new ol.source.OSM()
});
与此相反:

new ol.layer.Tile({
    source: new ol.source.MapQuest({ layer: 'osm' })
});
OL3很好用。

我问过他们。答案是否定的,除了MapQuest提供的SDK之外,我们不能在任何其他SDK中使用MapQuest tiles

此外,即使使用MapQuest SDK,也禁止缓存/存储数据,即使使用付费帐户也是如此

如果你需要一张免费、无限制的全球地图,唯一的选择(我知道)是开放的街道地图。可惜的是,没有卫星图像,MapQuest是唯一一个(我知道的)

如果您准备付款,您应该能够使用MapBox

编辑:我刚从MapQuest团队收到一封新邮件:

actually we don't do the maps anymore, we use Mapbox.
MapQuest is focusing on some mobile and IoT applications, routing and direction engines rather than maps

这很简单,只要改变你的tileUrl

替换此项:

var tileUrl = 'http://otile{s}.mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.png?x'; 
为此:

var tileUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png';
然后像以前一样使用:

L.tileLayer(tileUrl, {  }).addTo(map);

我切换到ESRI basemap,它工作正常

确保您参考了传单:


您还可以使用世界街道地图和其他ESRI基础地图

对于具有OpenLayers的底图图像,我们基本上只需要 Bing地图、Mapbox和DigitalGlobe。所有这三项服务都需要 一个API密钥,所有三个都提供一个免费层

我目前正在使用DigitalGlobe,并对 到目前为止,他们的决议和覆盖范围。要在OpenLayers中使用它, 首先在他们的站点注册API密钥

然后只需使用以下磁贴源(请记住替换您的\u访问\u令牌):

这将为您提供具有分辨率的全球卫星图像 从几米到10厘米不等!他们提供 比我在本例中提供的基础层更多,但是 这会让你很快开始

有关使用DigitalGlobe的更多OpenLayers示例,请参阅以下链接:


我也是这样……有人在关闭服务之前收到通知吗???我无法用语言来描述这种行为professionalism@AnestisKivranoglou我和你一样。。。突然,我应用程序中的地图停止向客户端显示地图。。。真的很尴尬。我向所有读过这篇文章的人保证,当我找到任何解决方案时,我会立即发布。关于如何最好地用?我试着在你的答案中添加脚本(使用我自己的密钥),但运气不好。我们只是按照他们的基本地图文档进行操作。我最终使用了的修改版本。不要将图像用于代码示例。堆栈交换不是这样工作的。我无法让
tileUrl='http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'
工作。如果我使用
tileUrl=,我就能够让它工作http://tile.openstreetmap.org/{z} /{x}/{y}.png'
使用
https://tile.openstreetmap.org/1/1/1.png
返回错误。
L.tileLayer(tileUrl, {  }).addTo(map);
new ol.layer.Tile({
  title: 'DigitalGlobe Maps API: Recent Imagery with Streets',
  attribution: "© DigitalGlobe, Inc",
  source: new ol.source.XYZ({
            url: 'http://api.tiles.mapbox.com/v4/digitalglobe.nal0mpda/{z}/{x}/{y}.png?access_token=YOUR_ACCESS_TOKEN'
  })
})