Я пытаюсь использовать Mapbox GL в сочетании с простыми публичными c серверами OSM. Следуя примеру того, как добавить источник растровых плиток , мой минимальный пример выглядит следующим образом:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Minimal OSM Test</title>
<meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no" />
<script src="https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl.js"></script>
<link href="https://api.mapbox.com/mapbox-gl-js/v1.8.1/mapbox-gl.css" rel="stylesheet" />
<style>
body {
margin: 0;
padding: 0;
}
#map {
position: absolute;
top: 0;
bottom: 0;
width: 100%;
border: solid 1px #000000;
}
</style>
</head>
<body>
<div id="map"></div>
<script>
var map = new mapboxgl.Map({
container: 'map',
style: {
version: 8,
sources: {
osm: {
type: 'raster',
tiles: ["https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"],
}
},
layers: [{
id: 'osm',
type: 'raster',
source: 'osm',
}],
}
});
</script>
</body>
</html>
К сожалению, это не работает: карта делает ничего не показывать, и консоль браузера заполнена ошибками заблокированных перекрестных запросов.
С другими библиотеками карт, такими как Leaflet или OpenLayers, у меня нет проблем с подключением к серверам publi c OSM.
Как мне сделать эту работу в Mapbox GL JS?