Я пытаюсь начать работу с OpenLayers3, чтобы получить доступ к данным погоды из Великобритании.OpenLayers3 доступ к серверу погоды Великобритании
У их службы Datapoint есть мозаичный WMTS-сервер. Я пытаюсь получить доступ к радарам/осадкам. Получение ошибок «501 - не реализовано».
<div id="map" class="map"></div>
<script>
var map = new ol.Map({
target: 'map',
layers: [
new ol.layer.Tile({
source: new ol.source.TileWMS({
url: 'http://datapoint.metoffice.gov.uk/public/data/inspire/view/wmts',
params: {
'LAYERS': 'RADAR_UK_Composite_Highres',
'VERSION': '1.0.0',
'key': '[your-api-access-key-goes-here]'
}
})
})
],
view: new ol.View({
projection: 'EPSG:4326',
center: [0, 0],
zoom: 0
})
});
</script>
Их возможности док имеет ServiceTypeVersion OGC WMTS = 1.0.0, поэтому я переопределить значение по умолчанию OL 1.3.0. Название слоя кажется тоже прекрасным.
Установка OpenLayers генерирует 3 вызовов на сервер, формы
http://datapoint.metoffice.gov.uk/public/data/inspire/view/wmts?SERVICE=WMS&VERSION=1.0.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=RADAR_UK_Composite_Highres&key=my_key_goes_here&WIDTH=256&HEIGHT=256&SRS=EPSG%3A4326&STYLES=&BBOX=-180%2C-270%2C180%2C90
Повторные здесь как обычный текст (обратите внимание, что мой ключ API был удален из URL): http://datapoint.metoffice.gov.uk/public/data/inspire/view/wmts?SERVICE=WMS&VERSION=1.0.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&LAYERS=RADAR_UK_Composite_Highres&key=my_key_goes_here&WIDTH=256&HEIGHT=256&SRS=EPSG%3A4326&STYLES=&BBOX=-180%2C-270%2C180%2C90
В Возможности док, есть
имя операции = "GetTile"
Но нет GetMap. Это объясняет ошибку 501.
Но если я пытаюсь заставить «gettile», он дает ошибку 400 - плохой запрос.