使用MapBox键进行OSMBuilding

问题描述 投票:1回答:1

看看这里的例子:https://osmbuildings.org/examples/

在JS部分中,他们定义了click的事件:

 osmb.click(function(e) {
  var url = 'https://data.osmbuildings.org/0.2/uejws863/feature/'+ e.feature +'.json';
  ajax(url, function(json) {
    var content = '<b>OSM ID '+ e.feature +'</b>';
    for (var i = 0; i < json.features.length; i++) {
      content += '<br><em>OSM Part ID</em> '+ json.features[i].id;
      content += '<br>'+ formatJSON(json.features[i].properties.tags);
    }

    L.popup({ maxHeight:200, autoPanPaddingTopLeft:[50,50] })
      .setLatLng(L.latLng(e.lat, e.lon))
      .setContent(content)
      .openOn(map);
  });
});

在此代码中,uejws863是“YOUR_MAPBOX_KEY”。我可以找到我的MAPBOX访问令牌,但如果我用我的令牌更改uej ..它仍然会说“未授权”。基本上我试图在localhost上运行这个例子。我应该怎么做才能找到密钥或更改api呼叫?

javascript maps mapbox openstreetmap mapbox-gl-js
1个回答
1
投票

查看OSM Buildings examples时,在向MapBox服务器发出tile请求时使用"YOUR_MAPBOX_KEY",例如:

map.addMapTiles('https://{s}.tiles.mapbox.com/v3/[YOUR_MAPBOX_KEY]/{z}/{x}/{y}.png');

在向OSM Buildings服务器发出请求时,他们使用anonymous作为密钥:

map.addGeoJSONTiles('https://{s}.data.osmbuildings.org/0.2/anonymous/tile/{z}/{x}/{y}.json');

虽然我使用anonymouskey获得了结果,例如:

https://data.osmbuildings.org/0.2/anonymous/style.json

我建议您注册以获取OSM Buildings的密钥,而不是MapBox

https://osmbuildings.org/login/

© www.soinside.com 2019 - 2024. All rights reserved.